Method and System for Combinatorial Layout Design

ABSTRACT

The present invention discloses a method for combinatorial layout design, in particular family mould layout design, using a computer. The method starts with receiving design specific parameters and information about moulding parts from user. A Genetic Algorithm module is then invoked to generate a population of layout designs which satisfies the design specific parameters. The Genetic Algorithm module first automatically generates a population of specially designed chromosome with three interdependent sessions. Crossover, mutation and replacement operation are applied on the population subsequently to evolve such towards a more optimal population over successive generations. In each generation step, a Genotype-Phenotype mapping module is utilised to decode the chromosome to corresponding layout design for fitness evaluation. A system for combinatorial layout design automation and optimisation using this evolutionary design approach is also disclosed in the present invention.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims benefit under 35 U.S.C. §119(e) of U.S.Provisional Application having Ser. No. 61/560,294 filed in Nov. 16,2011, which is hereby incorporated by reference herein in its entirety.

FIELD OF INVENTION

This invention relates to a method and system for combinatorial layoutdesign automation and optimisation.

BACKGROUND OF INVENTION

Combinatorial layout design has been a challenging research topic inengineering as well as operation research. In general, combinatoriallayout design is a process of allocating a set of space elements on alayout base, performing grouping and designing topological andgeometrical relationships between them according to certain designobjectives and constraints. Therefore, a wide variety of applicationareas ranging from family mould layout design, architectural floor planlayout design and component space layout design to circuit board layoutdesign, page layout design and user-interface menu layout design involvecombinatorial layout design.

For example, family mould layout design is one of good applicationexamples of combinatorial layout design, Family moulds are widely usedin some industries, such as toys and domestic products, because familymoulds can offer an efficient and economical way to produce dissimilarplastic parts of the same plastic material and colour forsmall-to-medium production volume. In Family Mould Layout Design (FMLD),Family Mould Cavity and Runner Layout Design (FMCRLD) is the mostcritical task that significantly affects the cost and performance of afamily mould because it determines many key design and cost factors suchas filling balance performance, runner cost, mould insert cost, mouldbase cost and so forth. Each family mould is custom-made and unique.Different family moulds must be newly designed to meet different designrequirements and constraints. Therefore, FMCRLD is non-repetitive andgenerative. Besides, FMCRLD involves a large number of combinations ofvarious cavity layout and associated runner layout design alternativesand design considerations. In practice, it is virtually impossible formould designers to try out all possible design alternatives manually tofind the best trade-off solution between mould performance and cost.Existing human-dependent manual FMCRLD methods and the shortage ofexperienced mould designers cause long design lead time, non-optimumdesigns and costly human errors. FMCRLD is demanding andexperience-dependent. Performing FMCRLD can be regarded as a “black art”of family mould design. A computer-based design tool to assist lessexperienced mould designers in performing FMCRLD is urgently needed.However, over the years, no published research, commercial softwarepackage or patented system can support FMCRLD automation andoptimisation. For example, most Mechanical Computer-Aided Design (MCAD)systems can provide parametric cavity layout functions that can automateroutine and regular cavity layout design of “One Product Moulds” usingpre-defined standard cavity layout configuration templates. However,they cannot support FMCRLD automation and optimisation. Research onmould design has been widely reported over the years. However, researchon FMCRLD automation and optimisation has gained little attention. Noprevious research can automatically generate a global optimum FMCRLD formass production of complex-shaped parts (with no geometric limitation)considering a number of mould layout design objectives (such asmaximization of filling balance performance, clamping force balanceperformance and drop time performance, and minimization of mould basecost, mould insert cost, runner scrap cost, slider cost and injectionmoulding cost) and constraints (such as mould base size limitations ofcustomer's available injection moulding machines).

In family mould design, runner system balancing is one of the mostimportant issues. Traditionally, runner and gate design areexperience-dependent. In the past, a balanced runner system was achievedby adding runner shut-offs, using flow restrictors or adjusting gatesizes in the test-shot phase based on a trial-and-error basis. Thisiterative process of testing and re-machining on the mould is verycostly and time-consuming. Today, through the use of advanced commercialmould flow Computer-Aided Engineering (CAE) simulation softwarepackages, mould designers can determine the diameters of each individualrunner segments of a given initial runner layout design to achieveartificial filling balance of a family mould before building the mould.However, it still require an experienced engineer to provide an initialrunner layout and gate design beforehand, and correctly diagnose thesimulation results and adjust the diameter of each runner segment basedon a trial-and-error basis. Moreover, artificial filling balance offamily moulds should be done by balancing the pressure drops in eachflow branch with a proper cavity layout, runner lengths and diameters. Abetter FMCRLD can improve the artificial filling balance performancewith a wider process window. However, existing commercial mould flow CAEsoftware packages cannot considerate numerous combinations of FMCRLDautomatically when performing artificial filling balance of familymoulds. Because of the costly, tedious and time-consuming datapreparation for filling balance analysis of numerous different FMCRLD,it is virtually impossible for mould designers to try all possibleFMCRLD combinations and do such time-consuming mould filling analysis tofine-tune all of them one by one to search for the best solution. Overthe years, many researchers have attempted to address the problems ofrunner system balancing for multiple-cavity moulds (including familymoulds) using various optimisation approaches. However, all the previousresearch on runner system balancing did not consider the numerouspossible combinations of different runner layout design interrelatedwith different cavity layout design in family moulds.

In other application areas, similar to family mould layout design,architectural space layout design, component space layout design,circuit board layout design, page layout design, user-interface menulayout design and so forth also involve allocating a set of spaceelements on a layout base, performing grouping and designing topologicaland geometrical relationships between them satisfying their specificdesign objectives and constraints. All of them are complex,combinatorial, non-repetitive, generative and human-dependent. Somespecialised software tools can support designers to produce ageometrical layout design. However, when human designers deal with largeand complex layout design problems, they easily get bored, distractedand tend to make mistakes. A good layout design still highly depends ona human designer's experience, knowledge, and creative ability.Combinatorial layout design automation and optimisation is full ofchallenges. Traditional design automation approaches, such as rule basedreasoning, case-based reasoning and parametric design template, cannotproduce truly creative, unpredictable or novel layout design solutionsbecause they are unable to imitate human creativity based onpre-processed human problem-solving knowledge or human-generatedsolutions. Moreover, a solution space of a combinatorial layout designproblem is so large that design knowledge cannot be captured,formulated, reused and represented in the form of rules, cases or designtemplates efficiently. On the other hand, traditional optimisationtechniques, such as linear programming, branch and bound andgradient-based algorithms have been adopted to find the optimum strippacking layout design and container stuffing. These traditionaloptimisation techniques are efficient to search for the nearest localoptimal solution with respect to the given initial solution. However,they are limited to a narrow class of simple layout problems whereexplicit mathematical equations describing the objective functions andconstraints are available. In practice, finding a global optimum layoutsolution to a combinatorial layout design problem cannot be treated asan ordinary design parameter optimisation problem with a fixed number ofvariables based on a given initial layout design. In addition, layoutdesign objectives and constraints and interactions among them aredifficult to build as true mathematical models. More importantly, asearch space of a combinatorial layout design problem is so large thatoptimisation should aim at searching for a population of good layoutdesign solutions rather than a single local optimum one. In addition tothe aforementioned optimisation techniques, Heuristic Rule-based (HR)algorithms are commonly used to solve specific types of packing andcutting stock problems. Previous research demonstrated that acceptablelayout solutions could be generated efficiently based on specialheuristic rules derived from common sense or experiences. However, theseHR approaches are only applicable to a specific class of component spacelayout design problems where well-formed heuristic rules are available.Moreover, because of these reasons, such traditional optimisationtechniques are unable to navigate such large search spaces to find nearoptimum solutions globally and are likely to be inferior local optima.In order to overcome the limitations of such traditional optimisationtechniques, other researchers focused on seeking optimum layoutsolutions globally using Meta-Heuristic Search (MHS) techniques, such asTabu Search (TS), Simulated Annealing (SA) and Genetic Algorithms (GA).TS is a dynamic neighbourhood search technique combined withmemory-based strategies. It has been successfully applied to manycombinatorial component space layout optimisation problems such as thetwo-dimensional cutting stock problem and three-dimensional bin-packingproblem. Meanwhile, SA is an iterative improvement algorithm simulatingthe metallurgical annealing of heated metals. It has been widely used incircuit layout design, manufacturing facility layout design,three-dimensional mechanical and electro-mechanical component layoutdesign and Heat, Ventilation and Air Conditioning (HVAC) routing layoutdesign. GA is a stochastic search technique inspired by the biologicalphenomenon of the natural evolutionary process of survival of thefittest. It has been proven to be reliable and able to deal with complexcombinatorial and multi-objective layout problems in a wide variety ofapplication areas ranging from runner size optimisation and strippacking layout design to floor plan layout design andVery-Large-Scale-Integration (VLSI) circuit layout design. GA issuperior to TS and SA because GA can deal with populations of solutionsrather than a single solution. Therefore, GA can explore theneighbourhood of the whole population and does not strongly rely on theinitial solution. Besides, GA can exchange the information of a largeset of parallel solutions in the population through the evolutionaryprocess. Thus GA appears to show great potential to supportcombinatorial layout design optimisation with its explorative andgenerative design process embodied in a stochastic evolutionary search.However, combinatorial layout design automation and optimisation usingGA is full of challenges. This is because GA is very problem-specific.GA highly depends on a proper chromosome design and genetic operatordesign specially developed for a specific application problem.

Traditionally, binary representations (e.g. 01001011011 . . . ) are themost common representations for many combinatorial optimisation problemsbecause the binary representation allows a direct and very naturalencoding. Chromosomes in GA can also be represented in other forms, suchas integer representations, real-valued representations, messyrepresentations and direct representations. Chromosome design is veryproblem-specific. In some cases, it is not practical to encode a complexdesign problem using traditional chromosome representation methods. Forexample, combinatorial layout design involves grouping problems.Designers need to decide how many groups should be divided and whichspace elements should be grouped together to make a good layoutsolution. Most previous research using either standard or orderingchromosome design are not suitable for grouping problems becausestandard or ordering chromosome is object oriented rather than grouporiented. Moreover, no previous research can deal with combinatoriallayout design problems, which involves solving both grouping problemsand space layout design problems at the same time. In fact, usingdifferent chromosome design can affect GA performance dramatically.Designing a proper chromosome remains the black art of GA research.

On the other hand, crossover is the most important genetic operator ofGA. Crossover aims to combine pieces of genetic information fromdifferent individuals in the population. Every generation inheritstraits from its parents through genes. In a fixed-length chromosome, theallele (parameter or feature value) for a particular gene (parameter orfeature) is coded for at a particular locus (genotype position). It issimple for a standard crossover operator to exchange homologous segmentsdivided by the same crossover point in each parent genotype. However,combinatorial layout design problems cannot be simply encoded intofixed-length chromosomes because numbers of groups and numbers of spaceelements in each group are variable and unknown beforehand. Whenvariable-length chromosomes are used, no homologous segments divided bythe same crossover point in each parent genotype can be exchanged toproduce offspring that can inherit meaningful building blocks from bothparents. It may produce invalid offspring because genes are combinedindependently from each of both parents in a cut-and-concentrate mannerduring a crossover process. A special chromosome requires a specialisedcrossover operator to inherit and recombine individuals' importantgenetic properties from generation to generation. Designing a crossoveroperator to produce valid offspring that can inherit meaningful buildingblocks from both parents with chromosomes containing grouping geneticinformation, space layout genetic information and so forth is verychallenging.

SUMMARY OF INVENTION

In the light of the foregoing background, it is an object of the presentinvention to provide an evolutionary design method for combinatoriallayout design automation and optimisation using GA. Another object is toprovide a method and system, entitled “Intelligent Conceptual MouldLayout Design System (ICMLDS)” as a domain-specific realisation of thecombinatorial layout design approach. The ICMLDS is customised based onsaid evolutionary design method to support automation and optimisationof FMCRLD at the early conceptual layout design stage for massproduction of complex-shaped plastic parts.

In the ICMLDS, mould designers only need to provide information ofmoulding parts (such as overall dimensions, shape codes, wall thicknessdimensions, types and locations of gates, dimensions and locations ofsliders, and plastic material) and moulding requirements of a familymould (such as required numbers of shots and estimated cycle time forproduction). Without any experienced mould designers' intervention, theICMLDS can automatically generate global optimum FMCRLD solutions fromscratch considering multiple mould layout design optimisation objectivesand constraints for mass production. The mould layout designoptimisation objectives are: maximisation of filling balanceperformance, clamping force balance performance and drop timeperformance, and minimisation of mould base cost, mould insert cost,runner scrap cost, slider cost and injection moulding cost. The mouldlayout design constraints relate to validity issues in FMCRLD and mouldbase size limitations of customer's available injection mouldingmachines. In addition, mould designers are allowed to adjust weightingfactors of the aforementioned performance and cost objectives, andspecify the mould base size constraint to fulfil different customers'requirements. Accordingly, the ICMLDS can automatically evolve apopulation of good and error-free FMCRLD solutions, which can satisfythe specific family mould design optimisation objectives andconstraints. Then, mould designers can browse and visualise differentFMCRLD alternatives associated with their fitness values in thepopulation to select the best trade-off FMCRLD solution betweenperformance and cost. Based on the selected FMCRLD solution, the ICMLDSseamlessly integrated with a Pro/Engineer® Wildfire® 4.0 MCAD system canautomatically generate a preliminary mould design assembly model andmould layout drawing associated with a table of Bill of Material (BOM),mould design configuration and specification for streamlining multiplemould development workflows starting from the early quotation phase tothe later downstream detail mould design and manufacturing phase.

Accordingly, the present invention, in one aspect, is a methodimplemented on a computer for family mould layout design. The methodcomprising: (a) providing a knowledgebase for family mould layoutdesign; (b) providing a means for encoding the FMCRLD using a speciallydesigned chromosome; (c) providing a Genotype-Phenotype mapping modulefor decoding the specially design chromosome to a family mould layoutsolution; (d) receiving design specific parameters via a user inputinterface module; (e) invoking a Genetic Algorithm (GA) method that canautomatically generate a population of valid chromosomes, whichcorrespond to feasible FMCRLD solutions; and evolve the populationtowards a resulting one which satisfies the user-specified designspecific parameters over successive generations; in each generation, theGenotype-Phenotype mapping module is utilised to decode the populationof valid chromosomes to a corresponding population of FMCRLD solutions;(f) facilitating users to learn and search for the best FMCRLD solutionby exploring and visualising different optimised FMCRLD solutionsthrough an instant design feedback of quantitative fitness values; and(g) generate a mould design assembly model and mould layout drawingaccording to the selected best FMCRLD solutions.

In one embodiment, the knowledgebase comprise a set of group placementrules, a set of internal cavity layout rules, a set of runner layoutshape rules, a plurality of mould design knowledgebase, which comprise astandard mould base database, empirical formula of runner sizes,empirical cavity layout design rules and empirical design rules ofsliders and a group of feasible family mould layout design alternatives.These alternatives are generated via applying the group placement rules,internal cavity layout rules and runner layout shape rules to variousinitial shapes successively

In another embodiment, the FMCRLD comprises at least two cavity groups.Each cavity group comprises a plurality of cavities which areinter-connected by runners. The encoding means encodes such FMCRLD to aspecially designed chromosome with three interdependent sessions: (a) anorientation session contains a set of genes that control orientation ofcorresponding cavities; (b) a group session contains a set of genes thatcontrol cavity grouping design information of corresponding cavities;and (c) a variable-length group layout shape rule session contains a setof genes that control geometric and topological layout information ofcorresponding cavities, cavity groups and runners in a family mould.

In yet another embodiment, the Genotype-Phenotype mapping moduleperforms the mapping that comprises the steps of: (a) reading data ofthe chromosomes; (b) decoding each chromosomes based on theknowledgebase; (c) for each cavity group, computing assembly coordinatesof each cavity and creating runner for connecting all cavities withinthe cavity group; (d) selecting suitable mould bases from the standardmould base database in the knowledgebase for accommodating all cavitygroups computed from step (c); (e) determining the diameter of eachrunner according to empirical formula of runner sizes in theknowledgebase; and (f) determining the configuration of sliders based onempirical design rules of sliders in the knowledgebase.

In one embodiment, the GA method comprises the steps of: (a) generatinga population of valid chromosomes automatically based on theknowledgebase; (b) using the Genotype-Phenotype mapping module to decodethe population of valid chromosomes into phenotypes for fitnessevaluation; (c) using a fitness evaluation algorithm to evaluate fitnessvalues of all phenotypes in the population; (d) selecting twochromosomes from the population as parents by using a tournamentselection strategy based on their fitness values; (e) generating atleast one valid offspring chromosome by utilising a crossover operationto the selected parents; (f) mutating the offspring chromosome by amutation operation; (g) decoding the offspring chromosomes to acorresponding phenotype; (h) evaluating fitness values of the offspringphenotypes; (i) ranking all chromosomes in the population according totheir fitness values and identifying the lowest rank chromosomes; (j) ifone of the fitness values of the two offspring chromosomes is betterthan that of the lowest rank chromosome, replacing the lowest rankchromosome with the better offspring chromosome; (k) repeating step (d)to step (j) until a pre-defined generation gap (i.e. the number of thelowest rank chromosomes being replaced at each generation) is attained;and (l) repeating steps (d) to (k) over successive generations until oneof predefined stopping criteria is attained.

In another embodiment, the step for generating a population of validchromosomes further comprises the steps of: (a) randomly creating aplurality of cavity groups, the quantity of the plurality of cavitygroups should be greater than two and less than or equal to the quantityof the moulding parts; (b) randomly filling the group session of thechromosome by assigning at least one moulding part to each cavity group;(c) filling the variable-length group layout shape rule session with acombination of identification numbers of group placement rule, internalcavity layout rule and runner layout shape rule respectively; whereinthe valid identification numbers are chosen randomly, but thecombination of them is conformed to the knowledgebase; and (d) fillingthe orientation session by assigning an orientation parameter to eachmoulding part.

In another embodiment, the fitness values evaluation step furthercomprises the steps of: (a) calculating a first weighted sum ofplurality of costs; (b) calculating a second weighted sum of pluralityof performance values; and (c) computing the fitness value which is aratio of the first weighted sum to the second weighted sum computed fromstep (a) and step (b) respectively.

In yet another embodiment, the plurality of costs comprise cost of mouldinsert, cost of mould base, cost of runners, cost of external sliders,cost of injection moulding and a penalty cost of violating thepredefined design specific parameters; whereas the plurality ofperformance values comprise flow path balance performance value, runnerdiameter balance performance value, clamping force balance performancevalue and drop time performance value.

In another embodiment, the crossover operation comprises the steps of:(a) selecting at least gene in the group layout shape rules session ineach of the two parents as crossing groups; (b) injecting the crossinggroups into each other; (c) copying corresponding gene in theorientation session and the group session associated with the crossinggroups into each other to generate the offspring chromosomes; (d)eliminating the moulding parts that occur more than once and the cavitygroup that does not contain any moulding part in the offspringchromosomes; and (e) changing sliders based on new location andorientation of the moulding parts.

In another embodiment, the mutation operation performs one of thefollowing steps: (a) changing the orientation session of the offspringchromosome randomly; (b) changing the group session of the offspringchromosome randomly and eliminating any empty cavity groups therefrom;(c) creating a new group in the group layout shape rule of the offspringchromosome randomly, assigning one of the moulding parts to the newgroup; and updating the group sessions of the offspring chromosomeaccordingly; (d) randomly modifying the group placement rule, theinternal cavity layout rule or the runner layout shape rule of at leastone group in the group layout shape rule session of the offspringchromosome; or (e) any combination of the above.

In a further embodiment, the GA method terminates its execution when oneof the following predefined stopping criteria occurs: (a) a maximumnumber of generations specified by the user is reached; (b) a maximumrunning time specified by the user is reached; (c) no improvementbetween the first cost performance values and the second costperformance values for a sequence of predefined number of iterations inthe repeating step is found; or (d) any combination of the aboveconditions occurs.

According to another aspect of the present invention, it is a system forfamily mould layout design. The system comprises: (a) a knowledgebase;(b) an encoding module for encoding family mould layout designs tochromosomes; (c) a Genotype-Phenotype mapping module for decoding thechromosome to phenotypes that represent family mould layout solution;(d) a user input interface module for receiving design specificparameters; (e) a Genetic Algorithm module for generating a populationof valid chromosomes and evolving the population towards a resulting onewhich satisfies the user-specified design specific parameters andoptimum mould flow filling balance over successive generations; and (f)a system output interface module for exploration and visualisation offamily mould layout design solution and generation of mould designassembly model and mould layout drawing.

In another embodiment, the knowledgebase of the system furthercomprises: (a) a group placement rules dataset; (b) an internal cavitylayout rules database; (c) a runner layout shape rules database; (d) aplurality of mould design knowledge comprising standard mould basedatabase, database of empirical formula of runner sizes, database ofempirical cavity layout design rules and database of empirical designrules of sliders; and (e) a feasible family mould layout designalternatives database.

In yet another embodiment, the family mould layout comprises at leasttwo cavity groups. Each cavity group comprises a plurality of cavitieswhich are inter-connected by runners. The encoding module of the systemfurther comprises three submodules: (a) an orientation encodingsubmodule for encoding the orientation of the cavity to an orientationsession of the chromosome; (b) a cavity group encoding submodule forencoding the cavity grouping design information to a group session ofthe chromosome; and (c) a geometric encoding submodule for encoding thegeometric and topological layout information of the cavity and runnersto a variable-length group layout shape rule session of the chromosome.

In another embodiment, the user interface module of the system furthercomprises a storage means for storing design specific parameters, forexample information regarding the moulding parts, design objectives andconstrains, moulding requirements and predefined parameters and stoppingcriteria for the Genetic Algorithm module.

In a further embodiment, the Genetic Algorithm module further comprises:(a) a retrieving submodule for retrieving design specific parameters,encoded chromosome and phenotypes from storage mean of the interfacemodule, encoding module and Genotype-Phenotype mapping modulerespectively; (b) an initialisation submodule for generating apopulation of valid chromosomes; (c) a fitness evaluation submodule forcomputing quantitative fitness values of the phenotype; (d) a mould costestimation submodule for calculating a plurality of cost factors of thephenotype; (e) a parent selection submodule for selecting two parentsfrom said population of valid chromosome using tournament selectionstrategy; (f) a crossover operation submodule for producing at least oneoffspring chromosome from the selected parents; (g) a mutation operationsubmodule for mutating the offspring chromosomes randomly; (h) areplacement submodule for replacing the lowest rank chromosome in thepopulation by the offspring chromosome if the chromosome has a higherfitness value than that of the lowest rank chromosome; and (i) atermination submodule for terminating the Genetic Algorithm module whenany one of the predefined stopping criteria is attained.

In yet another embodiment, the system output interface module furthercomprises: (a) a data retrieving submodule for retrieving informationfrom the Genetic Algorithm module; (b) a rapid visualisation submodulefor visualising family mould layout designs, which are decoded from thepopulation of valid chromosome utilising the Genotype-Phenotype mappingmodule, and corresponding quantitative fitness values; (c) a graphplotting submodule for illustrating the change of quantitative fitnessvalues across successive generations; and (d) a computer-aid-designsubmodule for generating mould design assembly model and mould layoutdrawing.

It should be noted that the present invention should not be limited tothe field of family mould layout design, as described in the aforesaidembodiments. With domain-specific knowledgebase and corresponding designrules and Genotype-Phenotype mapping algorithm, the framework of thepresent invention could be generalised to fit in different kinds ofcombinatorial layout design.

In view thereof, a method for combination layout design using a computeris also disclosed in the present invention. The method comprises thestep of (a) providing a knowledgebase for the combinatorial layoutdesigns; (b) providing a mean for encoding the combinatorial layoutdesign to chromosomes; (c) providing a Genotype-Phenotype mapping modulefor decoding the chromosomes to corresponding combinatorial layoutsolution, which are represented by phenotypes; (d) receiving designspecific parameters via a user input interface module; and (e) invokinga Genetic Algorithm module to generate a population of valid chromosomesand evolve such towards a resulting one which satisfy the predefineddesign specific parameters over successive generations. In eachgeneration, the chromosomes are evolved by a crossover operator andmutation operator and their fitness value are measured after decodingsuch to a layout solution by the Genotype-Phenotype mapping module.

One major advantage of the present invention is that its novelevolutionary design method and system can automate and optimise FMCRLDconsidering critical economic factors, mould design objectives andconstraints for mass production of dissimilar complex-shaped plasticparts without any experienced mould designers' intervention, whichdramatically reduces the total design lead time and improves the totalquality of design of production family moulds.

Another advantage of the present invention is that it can streamline theworkflows starting from the early quotation phase to the later detaildesign phase, which enables mould designers to free up a lot of time tofurther optimise the design and make the right decisions at thebeginning. Most importantly, an individual mould designer's mistakes orbad design decisions on FMCRLD at an early design stage may cause somemajor design defects, such as serious short-shot and out ofspecification mould base size. If the FMCRLD proves to be totally faultyjust before the mould is delivered, it will require high cost and timeto rework the entire mould, involving purchasing a new mould base andtool material, machining the mould cavities and so forth. The presentinvention can generate error-free FMCRLD and eliminate the costly humanerrors.

Moreover, the present invention provides a rapid design visualisationand instant design feedback capabilities which enable less experiencedmould designers to explore more what-if design scenarios in less timeand thereby learn the art of family mould design by digitalexperimentation in an intelligent and interactive design environment. Inother words, the present invention can provide not only a powerfulintelligent design automation tool but also an interactivedesign-training tool capable of encouraging and accelerating moulddesigners' design alternative exploration, exploitation and optimisationfor better design in less time. The present invention provides theground-breaking evolutionary FMCRLD method and system that totallyinnovates the old-fashioned manual FMCRLD workflow to boost moulddesigners' ability and productivity in performing FMCRLD during the FMLDphase.

BRIEF DESCRIPTION OF FIGURES

FIG. 1 shows the concept of a nature-inspired evolutionary combinatoriallayout design of the present invention.

FIG. 2 shows the conceptual program flow chart of the evolutionarycombinatorial layout design of the present invention.

FIG. 3 shows the concept of virtual cavity groups and 12 main virtualmulti-cavity regions of the present invention.

FIG. 4 shows 12 basic shape placement rules of the group placementshape.

FIG. 5 shows examples of generation of group layout design using thegroup placement rules.

FIG. 6 a and FIG. 6 b shows exemplary group layouts for the runnerdesign.

FIG. 7 a shows a real-life example of an individual cavity layout designand 7 b shows the corresponding representation according to the presentinvention.

FIGS. 8 a and 8 b show orientation parameters of an individual cavity ofthe present invention.

FIGS. 9 a to 9 h show a set of internal cavity layout rules of thepresent invention.

FIGS. 10 a and 10 b show examples of application of runner layout shaperules of the present invention.

FIG. 11 shows summary of runner layout rules applied to various initialinternal cavity layouts.

FIG. 12 shows an example of an FMCRLD using the shape grammars of FMCRLDof the present invention.

FIG. 13 shows the chromosome design of combinatorial layout design ofthe present invention.

FIG. 14 shows the system architecture of the ICMLDS of the presentinvention.

FIG. 15 shows the main dialogue menu of the ICMLDS integrated with thePro/Engineer® Wildfire® 4.0 MCAD system.

FIG. 16 shows the sub-dialogue menu of the ICMLDS for inputting theparameters of moulding requirements, design optimisation objectives andGA.

FIG. 17 shows the sub-dialogue menu of the ICMLDS for inputting thedesign optimisation constraints and the GA stopping criteria.

FIG. 18 shows the program flow chart of the evolutionary FMCRLD module.

FIG. 19 shows the algorithm flow chart for generation of an initialpopulation and step by step chromosome generation process.

FIG. 20 shows the program flow chart of the Genotype-Phenotype mappingalgorithm.

FIG. 21 shows the program flow chart of the fitness evaluationalgorithm.

FIG. 22 shows an illustrative example of flow paths of four dissimilarcavities in a family mould.

FIG. 23 shows an illustrative example of Runner Diameter Balance Ratio(RDBR) of a family mould.

FIGS. 24 a and 24 b show an illustrative example of centre of resultantclamping force of a family mould.

FIG. 25 shows a drop height of moulding parts of a family mould.

FIG. 26 illustrates the tournament selection strategy adopted in thepresent invention.

FIG. 27 illustrates the group-oriented SG-based crossover operator.

FIG. 28 illustrates the mutation of the allele of the gene in theorientation session.

FIG. 29 illustrates the mutation of the allele of the gene in the groupsession—change group and eliminate empty groups.

FIG. 30 illustrates the mutation of the allele of the gene in the groupsession—create a new group.

FIG. 31 illustrates the mutation of the allele of the gene in the grouplayout shape rules session.

FIG. 32 shows the program flow chart of the system output interfacemodule.

FIG. 33 shows the graphical user interface of the evolutionary process.

FIG. 34 shows the dialogue menu of the evolutionary process.

FIG. 35 shows the program flow chart of the rapid visualisation module.

FIG. 36 shows the program flow chart of the evolutionary processanalysis module.

FIG. 37 shows the program flow chart of the CAD model generator module.

FIG. 38 shows some examples of initial random generation of FMCRLDproduced by the ICMLDS.

FIG. 39 shows the graph of average CP and best CP vs. generation.

FIG. 40 shows the mould layout assembly model generated by the ICMLDS.

FIG. 41 shows the detail drawing of the best FMCRLD solution.

FIG. 42 shows the modular tooling concept.

FIG. 43 shows the operation cycle of a tandem mould.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

As used herein and in the claims, “comprising” means including thefollowing elements but not excluding others.

The present invention discloses a novel approach for combinatoriallayout design, which involves allocating a set of space elements on alayout base, performing topological and geometrical grouping on them soas to satisfy certain user-specified design objectives and constraints.The Genetic Algorithm (GA) is adopted to explore and search a largefeasible solution space, and through its stochastic evolutionary searchprocess generates a set of creative design alternatives that yield anoptimal population of valid layout solutions. A multi-session chromosomedesign is disclosed to encode the entire layout configuration and acorresponding Genotype-Phenotype mapping algorithm is used to decode thelayout information in the chromosome and transform it to a physicallayout. Special cross-over and mutation operators are also developed tooperate on this multi-session chromosome. This novel layout designapproach can be applied to many practical layout design problems, suchas architectural space layout design, component space layout design,circuit board layout design, page layout design in a publication,user-interface menu layout design and so forth. For each of theseapplications, domain-specific knowledgebase and design rules will beused in connection with the GA module. However, the general framework ofsolving the combinatorial layout design remains the same.

Referring now to FIG. 1, it shows the concept of a nature-inspiredevolutionary combinatorial layout design of the present invention. Everyliving thing in the natural world is a masterpiece of evolved design.Evolutionary design in nature is the original and best evolutionarydesign system. In nature, a chromosome is an organised structure ofDeoxyribonucleic Acid (DNA) and protein. A segment of DNA is called a“gene”. Genes provide information that instructs an organism how to makean individual in many ways. The process of the generation of form inliving systems involves the sequence of coded instructions for selectingand locating different kinds of protein in particular locations.Phenotype is an individual organism's actual observed physicalproperties decoded from its genotype. In nature, the fitness of anindividual organism is measured by its ability to survive and produceoffspring in its living environment. Evolution is the process of changein the inherited traits of a population of organisms from one generationto the next driven by three main mechanisms—natural selection, geneticdrift and gene flow. Natural selection provides competition betweenorganisms for survival and reproduction. Every generation inheritstraits from its parents through genes. Consequently, stronger organisms'genes can be passed on to the next generation while weaker organisms dieout. Gene flow is the transfer of genes within and between populationsduring reproduction through genetic recombination (crossover). Geneticdrift is a random change (mutation) of gene information, also known asalleles, during reproduction. Taking the happy-face spider as anexample, spiders with different colour patterns in many forms of smilesare generated through natural evolution because their predators (theHawaiian Honeycreeper) are good at searching for the most common morph,the yellow morph. The main driving force behind evolutionary design innature is “Survival of the Fittest”.

FIG. 2 shows the conceptual program flow chart of the evolutionarycombinatorial layout design. Based on the principle of “Survival of theFittest”, the main concept of the present invention is to simulate thenatural evolutionary process to evolve combinatorial layout design usingShape Grammar (SG) and Genetic Algorithm (GA). Analogous to thebiological growth of form in living systems as mentioned previously, agene's locus is represented by a SG rule while the genotype (recipe) andthe combinatorial layout design solutions are represented by the plan(sequence of rules) and phenotype (blueprint) respectively. Eachgenotype (“control” part) corresponds to a unique phenotype (the bodyfeatures—the “controlled” part) through the Genotype-Phenotype mappingprocess 114 (see FIGS. 3 to 12 for more details). A SG of combinatoriallayout design incorporated with a specific design knowledgebase 116provides an encoding/decoding mechanism specially designed for evolvingcombinatorial layout design based on a specially designed hybridSG-based chromosome 118 (see FIG. 13 for more details). The evolutionaryprocess starts by receiving the user input at step 110 and proceeds togenerating a population at step 112 using the knowledgebase 116 whichcomprises shape grammars of the combinatorial layout design andcorresponding domain-specific knowledgebase. Then the genotypes aretransformed into phenotypes 120 for the fitness evaluation process atstep 122. A specific scoring scheme at step 124 is used to quantify thefitness value of each individual in the population considering multiplemould design objectives and constraints. The fittest (“best”) members ofthe population are then selected at step 126 randomly to produce anoffspring at step 130 through the crossover operation at step 128 (seeFIG. 33 for more details). At step 132, the mutation introducesadditional changes into the resulting genotype randomly to generate anew design solution (see FIGS. 34 to 37 for more details). Fitnessevaluation will be done again in step 134 and weak individuals will bereplaced by the better offspring and will disappear eventually duringthe natural evolutionary process. The selection, crossover and mutationoperations are applied repeatedly to the population until thetermination conditions are met at step 136. Finally, the program outputsthe resulting population at step 138. The GA coupled with SG-basedchromosomes 118 aims to allow for the generation of feasible and novelcombinatorial layout design solutions and enable the GA to search foroptimum solutions more efficiently. This approach can bring together theSG's design synthesis capability and the GA's capabilities of designspace navigation and optimisation.

A specific realisation on applying this combinatorial layout designapproach to tackle the family mould layout design is disclosed herein.In the context of injection moulding design, a cavity is a negative of amoulding part being produced, when the cavity is filled with heatedmolten material, it is cooled and becomes solid material resulting in acompleted positive moulding part. Hence the configuration of the cavityis determined by the corresponding moulding part. Shape Grammar (SG) isa set of shape replacement rules that can be applied consecutively togenerate infinitely many instances of shape arrangements conforming tothe specified rules in a non-deterministic manner. In the presentinvention, a novel SG of FMCRLD integrated with mould layout designknowledge is first developed. The main concept of the newly developed SGis to synthesise generative FMCRLD by manipulating three sets ofinterdependent SG—(i) group placement SG (see FIGS. 3 to 6), (ii)internal cavity layout SG (see FIGS. 7 to 9) and (iii) runner layout SG(see FIGS. 10 to 12).

FIG. 3 shows the concept of virtual multi-cavity groups 104 and twelvemain virtual multi-cavity group regions 102. A group placement design isdecomposed into virtual multi-cavity groups 104 and main virtualmulti-cavity group regions 102. The virtual multi-cavity group 104represents a group of cavities that are filled through the samesub-runner 107 from the primary runner 106. The virtual multi-cavitygroup region 102 defines the virtual boundary of differentnon-overlapping zones allocated around the virtual centre of the mouldbase 100 (also the sprue location). A virtual multi-cavity group 104 isrepresented by a rectangular boundary box. Each individual virtualmulti-cavity group 104 containing one or more cavities 108 is placed intwelve different virtual multi-cavity group regions (A-L) 102. Eachregion 102 can contain more than one virtual cavity group. Based on thisconcept, twelve shape placement rules for their corresponding twelvedifferent regions are developed.

FIG. 4 shows the twelve basic shape placement rules of the groupplacement SG. The group placement SG can control the placement ofvirtual multi-cavity groups 104 in a FMCRLD and generate unlimitednumbers of different group placement designs.

FIG. 5 shows examples of the application of various shape placementrules to various initial shapes. As illustrated in FIG. 5 a, if shapeplacement rule 1 is applied to the initial shape of the centre point ofthe mould base, the lower right corner of the rectangular box will bealigned to the centre point. Then, if rule 6 is applied to the shapeadded by rule 1 in the previous step, the rectangular box will be addedon top of the box. Subsequently, the resulting group placement designcan be generated by applying rules 7, 8 and 4. Another example of theapplication of various shape placement rules to various initial shapesis illustrated in FIG. 5 b.

FIGS. 6 a and 6 b illustrate how the group placement design SG can avoidany invalid group layout design. For example, the application of rule 4is allowed in region H (as shown in FIG. 5 a) only. Rule 8 can only beapplied to the centre point of the mould base in region G if there areno groups placed in regions H or F (as shown in FIG. 5 a). Rule 9 canonly be applied to the shape added in the previous step in region I.Therefore, a valid group layout can be generated accordingly, asillustrated in FIG. 6 b. FIG. 6 a shows an example of an invalid grouplayout caused by no restriction on the application of shape placementrules to different initial shapes in different regions. That results inan invalid group layout for improper runner design.

FIG. 7 a shows a real-life example of an individual cavity layoutdesign. FIG. 7 b shows how an individual cavity layout design isrepresented. In the present invention, moulding parts are classifiedinto two shape codes: Circular and Rectangular. All circular mouldingparts are represented by simple circular cylinders while all irregularmoulding parts are represented by rectangular boxes. The cavity internalbounding box 142 equal to the overall size of the moulding part isenclosed by the rectangular virtual cavity external bounding box 144with an offset distance 98 for sufficient shut-off area and space forrunners and cooling channels. The four sides of the external boundingbox are denoted by W, N, E and S. Information on the possible gatelocation 148 and the required slide action 150 are represented by arrowsas shown in FIG. 7 b.

FIG. 8 a shows the two possible orientation options for orientationparameter equals to 0 (horizontal) and FIG. 8 b shows the two possibleorientation options for vertical orientation parameter equals to 1(vertical). These parameters are used to control the orientation of eachindividual cavity 108 in a virtual multi-cavity group 104.

FIG. 9 shows a set of internal cavity layout SG rules which aim tocontrol the location arrangements of multiple cavities 108 in a virtualmulti-cavity group 104. The set of internal cavity layout rules,corresponding to FIGS. 9 b to 9 h respectively, are listed below:

T1 Horizontal series layout T2 Horizontal grid layout T3 Vertical serieslayout T4 Vertical grid layout T5 Horizontal grid layout with a singlecavity at the end T6 Vertical grid layout with a single cavity at theend T7 Circular layout

As example, FIG. 9 a shows the initial shape of the virtual multi-cavitygroup 104 and FIGS. 9 b to 9 h illustrates the resulting shape afterapplying internal cavity layout rules T1 to T7 respectively. Hence, ifinternal cavity layout rule T1 is applied to the virtual multi-cavitygroup 104 as shown in FIG. 9 a, the layout of each individual cavity 108will be arranged horizontally as shown in FIG. 9 b.

The internal cavity layout SG integrated with cavity layout designknowledge enables an automatic arrangement of multiple cavities in avirtual multi-cavity group 104 considering the shape code, volumetricsize, gate location and slider location of each individual cavity 108 aswell as the location of the virtual multi-cavity group 104.

In practice, family mould runner layout design involves four commonlyused runner layout styles: “Fishbone”, “H”, “X” and “Radial”. Based onthese four runner layout styles, a set of runner layout SG rules aredeveloped for automatic generation of feasible runner layout design thatcan adapt to different cavity layout designs intelligently. FIGS. 10 aand 10 b show two examples of application of runner layout shape rules.As shown in FIG. 10 a, runner layout shape rule R1 (“Fishbone” style)applied to the virtual multi-cavity group 104 with internal cavitylayout rule T2 generates the resulting “Fishbone” style runner layoutdesign with four sub-runner 107 and an primary runner 106. In anotherexample, referring to FIG. 10 b, if the internal cavity layout rule ischanged from T2 to Internal cavity layout rule T1, the resulting“Fishbone” style runner design can be changed accordingly.

FIG. 11 summarises the application of the runner layout SG rules tovirtual multi-cavity groups 104 with different numbers of cavities andvarious internal cavity layout rules can generate a number of differentrunner layout designs. There are some general rules to avoid invalidrunner layout designs. For example, R2 (“H” style) or R3 (“X” style) canonly be applied to a cavity group containing four or eight cavities withlayout rule T2 or T4. R4 (“Radial” style) is only valid for cavitygroups with three or more identical circular parts.

FIG. 12 illustrates an example of a FMCRLD of six virtual multi-cavitygroups 104 synthesised by the application of different shape placementrules (1, 3, 4, 6 or 7) in different regions (B, C, E, F or H as shownin FIG. 3) respectively. The six virtual multi-cavity groups 104 arefilled through the six individual “Fishbone” style secondary runners 174branched from the primary runner 106. Different cavities in eachindividual virtual multi-cavity group 104 are filled locally through itssub-runner system generated using different runner layout shape rules(R1, R2 or R4) associated with different internal cavity layout shaperules (T1, T2, T3, T4, T5 or T7). For better flow balancing and clampingforce balancing, internal cavity layout SG rule T1 can automaticallyplace a cavity with a bigger size closer to the vertical centre positionconsidering the volumetric size of dissimilar cavities and groupplacement rule 6 in Region C. Similarly, internal cavity layout SG ruleT3 combined with group placement rule 4 in Region H can place a cavitywith a bigger size closer to the horizontal centre position. Internalcavity layout SG rule T4 combined with group placement rule 7 in RegionE can intelligently not only place a cavity with a bigger size closer tothe horizontal centre position but also place two cavities with externalsliding action close together and near the outside group boundary foreasy and economic fabrication of the slider. If the number of sliders oneach side of the mould is more than one, all the sliders will be groupedinto one slider. Using different combinations of the proposed SG ruleapplications and various configurations of the virtual multi-cavitygroups 104 including the number of groups and the content of each groupcan generate a large number of different family mould cavity layoutdesigns. On the other hand, FMCRLD also needs to consider the cavitylayout and runner layout design restrictions to produce feasible FMCRLD.This kind of restriction is called a “Design Constraint”. In the presentinvention, the “Design Constraints” are handled by the SG of FMCRLD inassociation with the hybrid SG-based chromosome specially developed forsynthesising FMCRLD (see FIG. 13). The SG of FMCRLD is used as a decoderto transform genotypes into phenotypes and act as an encoder to generategenotypes for the initial population (see FIG. 20). This approach canmaintain the feasibility of individuals in the population and simplifythe search space regardless of any invalid FMCRLD generated during theevolutionary process.

The configuration of virtual multi-cavity groups 104 can be considered acombinatorial grouping design problem involving a large number ofpossible combinations of different numbers of groups and differentcontent of each group. In order to encode not only the geometricallayout design information but also the grouping design information incombinatorial layout design, the present invention, referring to FIG.13, presents a new hybrid SG-based chromosome that consists of threeinterdependent chromosome sessions—(a) Orientation session 192, (b)Group session 193 and (c) Group layout shape rules session 195. FIG. 13shows the mapping of the graphical phenotype representation with itscorresponding chromosome session in genotype representation. Theorientation session 192 of the chromosome contains a series oforientation parameters. Each gene 176 (also referred as orientationparameter) of the orientation session 192 contains information of acorresponding individual space element on a layout base for a particularcombinatorial layout design application. For example, the space elementand the layout base in FMCRLD are cavities and mould layout baserespectively. In other application areas, the space element can be aroom in a building, an electronic component in a circuit board, acomponent in a machine, a paragraph, article or advertisement in a webpage, magazine or newspaper, an item in a user-interface menu of adevice; whereas the layout base can be the floor plan of a building, thephysical size of a circuit board, the form factor of a machine, thescreen size of a web page, magazine or newspaper, the screen resolutionof the menu and so forth. A locus (position) of the gene represents thespace element identification number 178. The allele of the gene (geneinformation) is the space element's orientation parameter as defined inFIG. 8. The length of this session is fixed because it is equal to thenumber of the space elements. The grouping design information is storedin the group session 193 where the position of the gene represents thespace element identification number 178 and the corresponding geneinformation is the space element's group identification number. Forexample, the space element's group in FMCRLD is a cavity group. In otherapplication areas, the space element's group can be a department orfunctional area in a building, a module in a circuit board, a module ina machine, a functional group in a web page, magazine or newspaper, amodule in a user-interface menu of a device and so forth. In the grouplayout shape rules session 195, the position of the gene represents thegroup identification number 180 on a one-gene-for-one-group basis. Thelength of this session is variable because the number of groups isvariable. In each gene, a list of SG rule numbers enclosed inparenthesis represent the geometrical and topological layoutinformation. For example, in FMCRLD, each gene in this session comprisesthree rule number labels enclosed in parenthesis that represent thegroup placement rule 182 (see FIG. 4), the internal cavity layout rule184 (see FIG. 9) and the runner layout rule 186 (see FIG. 11) of theircorresponding group, respectively. Using the SG of FMCRLD, the genotypecan be decoded to form the phenotype as shown in FIG. 13. The mainadvantage of using this new hybrid SG-based chromosome is that the“Orientation session” 192 and the “Group session” 193 can represent themoulding part's orientation and the cavity grouping design while theassociated “Group layout shape rules session” 195 can represent thegeometrical and topological layout design with minimum redundancy.Moreover, the solution space can be reduced because this new hybridSG-based chromosome design enables all individuals generated in thepopulation to be feasible solutions conforming to the SG of FMCRLD.Using this concept, different sets of SG rules customised for differentdesign applications can work with this chromosome design to encodecombinatorial layout design for GA.

FIG. 14 illustrates the system architecture of the ICMLDS. The ICMLDSseamlessly integrated with the Pro/Engineer® Wildfire® 4.0 MCAD systemcomprises three main modules: (I) User input interface module 204, (II)Evolutionary FMCRLD module 206, which comprises an encoding module, aGenotype-Phenotype mapping module and a Genetic Algorithm module, and(III) System output interface module 208. Mould designers are requiredto input information of the moulding parts 210, design specificparameters 212, for instance moulding requirements and constraints,stopping criteria and fitness evaluation parameters for the GeneticAlgorithm modules, using the user input interface module (see FIGS. 15to 17 for more details) embedded within the MCAD system. Theevolutionary FMCRLD module 206 is the core of the whole system thatgenerates FMCRLD automatically and searches for optimum FMCRLD solutions214 using SG and GA. The system output interface module 208 is used toprovide and display rapid FMCRLD visualisation and design feedback 216on fitness evaluation results of different FMCRLD alternatives in theresulting population generated from the evolutionary FMCRLD module 206.Based on mould designers' final design decisions, the system outputmodule can generate mould layout design CAD models and associated layoutdrawings accordingly using domain-specific knowledgebase. In FMCRLD,these knowledgebase include mould design CAD model library 218 and thecustomised mould layout CAD drawing template 220. According to thepresent invention, the Genetic Algorithm module further comprises aretrieving submodule for retrieving information from other modules, aninitialisation submodule, a fitness evaluation submodule, a mould costestimation submodule, a parent selection submodule, a crossoveroperation submodule, a mutation operation submodule, a replacementsubmodule and a termination submodule. On the other hand, the systemoutput interface module 208 further comprises a data retrievingsubmodule for retrieving information from the Genetic Algorithm module,a rapid visualisation submodule, a graph plotting submodule and acomputer-aid-design submodule.

FIG. 15 shows the main dialogue menu of the ICMLDS integrated with thePro/Engineer® Wildfire® 4.0 MCAD system. For example, four dissimilarmoulding parts are initially added into the FMCRLD prototype systemthrough the use of the graphical user interface integrated with thePro/Engineer® Wildfire® 4.0.

FIG. 16 shows the sub-dialogue menu of the ICMLDS for inputtingparameters of moulding requirements, design optimisation objectives andGA. The ICMLDS requires mould designers to input the mouldingrequirements such as total number of shots and the estimated total cycletime (see the layout of “Optimisation Parameters” in FIG. 16). Besides,mould designers can modify a number of parameters of design objectivessuch as the performance goals and the weighting ratios of theperformance objectives and the cost objectives to change theoptimisation objectives and constraint for different design cases (seethe layout of “Design Objectives Setting” in FIG. 16). As shown in thelayout of “GA Parameters Setting” in FIG. 16, the values of the GAparameters can be modified if necessary.

FIG. 17 shows the sub-dialogue menu of the ICMLDS for inputting thedesign optimisation constraints and the GA stopping criteria. The designconstraints including the maximum allowable mould base size, constrainttype and penalty factor can be input using the graphical user interfaceas shown in the layout of “Design Constraints Setting” in FIG. 17. Amore detailed description of the design optimisation objectives andconstraints can be found in FIG. 21. Finally, mould designers can modifythe stopping criteria if necessary (see the layout of “GA StoppingCriteria Setting” in FIG. 17).

FIG. 18 shows the program flow chart of the evolutionary FMCRLD module.This module consists of two main components: Shape Grammar (SG) module222 and Steady-State Genetic Algorithm (SSGA) module 224. According tothe user input information, the algorithm in step 226 integrated withthe SG of FMCRLD 94 and mould design knowledgebase 96 is developed togenerate a population of valid chromosomes (P) step by step (see FIG. 19for more details). The algorithm will stop when the number of generatedindividual design solutions is equal to the specified population size“m”. Meanwhile, the generation counter (i) is set to one initially. AtStep 228, the Genotype-Phenotype mapping algorithm (see FIG. 20 for moredetails) denoted as Step 230 is called to decode the chromosome into thephenotype for fitness evaluation. According to the resulting phenotype,the fitness value of each individual in the population can be calculatedusing the weighted sum approach. This simple approach can integrate anumber of performance goals (P_(f), P_(r), P_(c) and P_(d)), costs(C_(m), C_(n), C_(r), C_(s) and C_(j)) and the penalty function forhandling the mould base size constraint into a single Cost Performance(CP) value. This approach allows mould designers to change the priorityof individual performance goal, cost and the penalty function fordifferent mould customers' specifications and requirements in a simpleway. In the present invention, an overlapping steady-state populationmodel is adopted in an attempt to reduce the computing workload as wellas the memory usage for the fitness evaluations and the geneticoperations. In this model, offspring and parents in the same populationcompete for survival. The number of individual in the population to bereplaced during each generation is controlled by the generation gap (G).Starting from Steps 232 to 252, the main program loop begins. Initially,the generation gap counter g is set to one. At Step 234, two parentsfrom the population (P) are selected at random using the tournamentselection strategy. This selection strategy can simulate the matingbattles often seen in nature by mutual “competition” of s individuals(tournament size) chosen at random from the population. In other words,it can provide the stochastic “ingredient” of the selection naturallyintroduced by the random choice of competing couples. At Step 236, a newoffspring is reproduced using the crossover operation with a predefinedcrossover rate. Subsequently, the offspring is mutated at Step 238 usingthe new mutation operation with a predefined mutation rate. At Step 240,the fitness of the new offspring is evaluated. The present inventionadopts a simple Replace the Worst (RW) replacement strategy because itcan imitate the natural evolutionary process of “Survival of theFittest” in the simplest way. At Step 242, if the fitness of the newoffspring is better than the worst individual found in the population(P), this worst individual will be replaced by this new offspring.Accordingly, the overlapping population (P) is updated at Step 244. AtStep 246, if the generation gap counter g is equal to the generation gap(G), the program will check if one of the stopping criteria (maximumnumber of generations, maximum running time and stall generations) ismet, or else the program will go to Step 248 to accumulate thegeneration gap counter g by 1, and go back to Step 234. When thegeneration gap counter g is equal to the generation gap G, the programchecks the stopping criteria again at Step 250. If one of thetermination criteria is met, the program will pass the resultingpopulation (P) to the system output interface module, or else thegeneration counter i will be accumulated by 1 at Step 252 and theprogram will go back to Step 232 to start the next program loop for thenext generation. These stopping criteria are used to prevent the GA fromrunning for too long. If the result is not satisfactory when thealgorithm stops due to one of these conditions, the values of Maximumrunning time and Stall generations can be increased to improve theresults.

FIG. 19 shows the algorithm flow diagram for generation of a populationof valid chromosome and the step-by-step generation process. First ofall, the information of the moulding parts must be input by the moulddesigners. The information includes part shape (circular or irregular),overall part size, part weight, type of gate, gate location, number ofsliders and so forth. The population size “m” must be specified beforethe recursive loop, starting from Steps 254 to 264, begins. The loopwill be stopped when the number of generated individual design solutionsis equal to the specified population size “m”. Step 254 is to generate anumber of groups at random. The minimum number of moulding parts “n”must be equal to or more than two. The virtual multi-cavity group 104must contain at least one moulding part. Therefore, the minimum numberof groups must be equal to two and the maximum number of groups must beequal to the number of moulding parts “n” in a family mould. The numberof virtual multi-cavity groups 104 can be selected at random within therange (2 to n). Step 256 is to assign moulding parts to each group atrandom. For example, Part 1 and Part 2 are assigned to Group 1 and Group2 respectively. Parts 3 and 4 are assigned to Group 3. Then, the groupsession 266 of the chromosome becomes “1233”. The graphicalrepresentation of its phenotype is shown on the left-hand side of FIG.19. Step 258 is to assign a group placement rule to each group atrandom. The rule identification number is selected for each group atrandom from the list of group placement rules (1-12) as shown in FIG. 4.Step 260 is to assign a feasible internal cavity layout rule to eachgroup at random. The rule identification number is selected for eachgroup at random from the valid list of internal cavity layout rules asillustrated in FIG. 9. Subsequently, Step 262 is to assign feasiblerunner layout shape rules to each group at random. Based on the numberof moulding parts in the virtual multi-cavity group 104 and the internalcavity layout rules, a rule identification number is selected at randomfrom the valid list of runner layout shape rules as summarized in FIG.11. The three rule identification number forms a gene that indicateswhich rules in each of the three shape grammars to apply. Finally, Step264 is to assign a feasible orientation parameter to each moulding partat random. The feasible orientation parameter of each cavity is selectedat random depending on the existing group placement, internal cavitylayout and runner layout.

FIG. 20 shows the program flow chart of the Genotype-Phenotype mappingalgorithm. The mapping algorithm starts from reading the chromosome dataat Step 268. At Step 270, the data of each moulding part (i), such asits size, wall thickness, Cavity Flow Path (CFP) and so on, is read fromthe corresponding pointer arrays stored in the system memory. Step 272is to count the total number of groups (n) in the group layout shaperule session. Then, a program loop is started from Steps 274 to 280 foreach group. The order of all moulding parts in a group according totheir projected area is ranked at step 274. Step 276 is to calculate theassembly coordinates of moulding parts in each group according to thelayout position decoded from the internal cavity layout SG rule number.At Step 278, the assembly coordinate of each group is calculatedaccording to its overall size and the layout position decoded from thegroup placement SG rule number. Step 280 is to create runner segmentsconnecting the gates of all moulding parts in each group to the sprueaccording to the runner layout design decoded from the runner layout SGrule number. At Step 282, the smallest suitable mould base is selectedfrom the standard mould base database based on the condition: if thewidth of the mould insert (Ix) is equal to or smaller than the width ofthe ejector plate of the mould base (Mx) and the length of the mouldinsert (Iy) is equal to or smaller than the inner vertical space betweenthe return pins (My). Step 284 is to calculate the diameter of eachrunner segment according to the empirical formula in relation to Wi, Li,Ti and the number of runner branches. With regard to the generation ofsliders, the program loop is started from Steps 286 to 288 for foursides of the mould. At Step 286, if the number of sliders on each sideis more than one, all the sliders will be grouped into one slider. Step288 is to complete the slider design on each side according to theempirical slider design rules. Finally, the resulting phenotype will besaved in the pointer arrays at Step 290.

Each family mould is unique, non-standard and custom-made according todifferent customers' requirements and constraints. No researchintensively focused on FMCRLD automation and optimisation has beenreported over the years. Therefore, FMCRLD optimisation objectives andconstraints still remain unknown. However, some general mould layoutdesign objectives should be considered. According to the mould designliterature, the general mould layout design objectives are:

-   -   1. To keep the same filling time and melt temperature of all        cavities.    -   2. To keep the minimum runner volume for reducing scrap plastic        material.    -   3. To keep sufficient space between cavities for cooling lines        and ejector pins, and an adequate cross section to withstand the        force from injection pressure.    -   4. To keep the sum of all reactive forces in the centre of        gravity of the platen.    -   5. To keep the layout as symmetrical as possible for easy        designing, manufacturing, cooling and ejection.    -   In addition, other economic design objectives have to be taken        into consideration. They are listed below:    -   6. To keep the overall size of the cavity layout design as        minimal as possible for the limited size of mould base and        moulding machines.    -   7. To keep the number of sliders as minimal as possible for the        reduction of the cost of making sliders.        -   8. To keep the drop height as minimal as possible for the            reduction of cycle time.    -   In practice, FMCRLD also involves two major constraints. They        are: i. Mould base size constraint; and ii. Mould layout design        constraint.

FIG. 21 shows the program flow chart of the fitness evaluationalgorithm. In the present invention, the evaluation criteria for optimumFMCRLD are mainly related to Cost (C) and Performance (P) according tothe aforementioned FMCRLD optimisation objectives and constraints. Thefitness evaluation algorithm starts from reading the individualphenotype from the phenotype data list in the system memory at Step 292.The quantitative cost evaluation of FMCRLD focuses on estimating thecritical cost factors: Cost of mould insert (C_(n)), Cost of mould base(C_(m)), Cost of runners (C_(r)), Cost of external sliders (C_(s)) andCost of injection moulding (C_(j)) using the empirical formulae asmentioned below.

At Step 294, the cost of mould insert (C_(n)) is calculated. The overallsize of a cavity layout design determines the material cost of mouldinserts (see equation 1).

C _(n,i) =X _(i) *Y _(i) *Z _(i) *D _(n) *P _(n)  (1)

where C_(n,i) is the estimated cost of the mould insert for designsolution (i) (HK$), X_(i) is the horizontal dimension of the mould basefor design solution (i) (mm), Y_(i) is the vertical dimension of themould base for design solution (i) (mm), Z_(i) is the total height ofthe mould base (mm), D_(n) is the density of the material of the mouldbase (kg/mm³), and P_(n) is the price of the material of the mould base(HK$/kg).

At Step 296, the cost of mould base (C_(m)) is calculated. The overallsize of a mould base determines the cost of mould base (see equation 2).

C _(m,i)=0.9*(5*W _(i) +W _(i) *L _(i) *H _(i) *D _(m) *P _(m))  (2)

where C_(m,i) is the estimated cost of the mould base of design solution(i) (HK$), W_(i) is the horizontal dimension of the mould base of designsolution (i) (mm), L_(i), is the vertical dimension of the mould base ofdesign solution (i) (mm), H_(i), is the total height of the mould baseof design solution (i) (mm), D_(m) is the density of the material of themould base (Kg/mm³), and P_(m) is the price of the material of the mouldbase (HK$/kg).

At Step 298, the cost of runners (C_(r)) is calculated. The goal ofreducing scrap plastic material is measured by calculating the totalvolume of runners (see Equations 3 and 4).

$\begin{matrix}\begin{matrix}{V_{{total},j} = {\sum\limits_{j = 1}^{m}{N_{i,j}*V_{i,j}}}} \\{{\sum\limits_{j = 1}^{m}{N_{i,j}*L_{i,j}*( {\pi \; r_{i,j}^{2}} )}}}\end{matrix} & (3) \\{C_{r,i} = {V_{{total},i}*D_{r}*P_{r}*S}} & (4)\end{matrix}$

where m is the number of different types of segments in the runnersystem of design solution (i), j is an index referring to a specificrunner segment of design solution (i), N_(i,j) is the number of therunner segment j of design solution (i), V_(i,j) is the volume of therunner segment j of design solution (i), L_(i,j) is the length of therunner segment j of design solution (i) (mm), and r_(i,j) is the radiusof the runner segment j of design solution (i) (mm), C_(r,i) is theestimated cost of runner of design solution (i) (HK$), D_(r) is thedensity of the plastic material (g/mm3), P_(r) is the price of theplastic material (HK$/g), S is the total number of shots required forthe whole production.

At Step 300, the cost of external sliders (C_(s)) is calculated. Thecost of sliders is estimated based on the required number and overallsize of sliders (see Equation 4).

$\begin{matrix}{C_{s,i} = {\overset{\underset{\underset{cost}{assembly}}{Fixed}}{\overset{}{K_{1}T_{i}}} + \overset{\overset{\underset{\underset{cost}{machining}}{Fixed}}{}}{K_{2}T_{i}} + {\sum\limits_{j = 1}^{T_{i}}( {\overset{\overset{\underset{\underset{cost}{material}}{Variable}}{}}{K_{3}V_{i,j}} + \overset{\overset{\underset{\underset{cost}{machining}}{Variable}}{}}{K_{4}V_{i,j}}} )}}} & (5)\end{matrix}$

where i is an index referring to design solution (i), j is an indexreferring to the individual slider used for design solution (i), T_(i)is the total number of sliders used for design solution (i), K1 is thecoefficient of the fixed assembly cost=600 (HK$/slider), K2 is thecoefficient of the fixed machining cost=600 (HK$/slider), K3 is thecoefficient of the variable material cost=0.003 (HK$/mm³), K4 is thecoefficient of the variable machining cost=0.005 (HK$/mm³), and V_(i,j)is the envelope size of individual slider assembly j used for designsolution (i) (mm³).

At Step 302, the cost of injection moulding (C_(j)) is calculated. Themaximum allowable mould based size is limited to the space between tiebars on the mould platen of a customer's available moulding machines.Therefore, different FMCRLD alternatives require different sizes ofmould bases that affect the selection of injection moulding machines.The estimated cost of injection moulding depends on the total number ofshots, the cycle time per shot and the average operating cost of therequired injection moulding machine (see Equation 6). In practice, alarger moulding machine requires a higher operating cost because of thehigher purchase price, higher maintenance cost, higher energyconsumption, more man-hours to set up and so forth (see Table 1 for moredetails).

C _(j,i) =S(t/3600)P _(i)  (6)

where i is an index referring to design solution (i), S is the totalnumber of shots required for the whole production, t is the estimatedcycle time per shot (seconds), and P, is the average operating cost ofthe required injection moulding machine for design solution (i)(HK$/hour) (see Table 1).

TABLE 1 Examples of technical parameters and average operation costs ofvarious injection moulding machines Locking Model Force Max. W Max. TMax. Daylight Operating Cost No. (ton) (mm) (mm) (mm) (HK$/hour) PT80 80357 357 630 48.92 PT130 130 409 409 650 58.58 PT160 160 459 459 75058.04 PT200 200 510 510 830 62.54 PT250 250 570 570 910 66.46 PT300 300560 610 1160 93.71 PT350 350 680 720 1420 99.29 PT450 450 720 822 1590109.98

At Step 304, the penalty cost (K_(p)*C_(j)) is calculated. The mouldbase size constraint must be considered because the maximum allowablemould base size is limited to the space between tie bars on the mouldplaten of a customer's available moulding machines. This type ofrestriction can be regarded as a “Geometric Constraint”. This geometricconstraint can be soft or hard. For example, a smaller mould base isusually preferable because it can be fit into a smaller moulding machinefor the reduction of operating cost, but a larger one may be allowed ifnecessary. If the mould base size of an individual FMCRLD solution islarger than the maximum allowable space between tie bars on the mouldplaten of a customer's available moulding machine, it will always beregarded as an invalid FMCRLD. The operating cost of the requiredinjection moulding machine (C_(j)) (see Step 302) for an individualsolution is already incorporated into the fitness function (see Step314). The weighting ratio of this cost factor can be adjusted ifnecessary. In addition, a simple static penalty function is adopted tohandle this geometric constraint in the present invention. If thegeometric constraint is set to “soft”, the individual solution violatingthe soft constraint will be penalised by adding an extra penalty costK_(p)(C_(j)) to its fitness value where K_(p) is a penalty factor. Ifthe geometric constraint is set to “free”, K_(p) will be equal to zero.If the geometric constraint is set to “hard”, all solutions violatingthe hard constraint will be thrown out.

With regard to the performance evaluation of FMCRLD, the presentinvention presents a new Flow path balance performance measurement(P_(f)) (see Step 306) and Runner diameter balance performancemeasurement (P_(r)) (see Step 308) to quantify the filling balanceperformance of FMCRLD without the aid of expensive and time-consumingmould flow CAE simulation. In addition to the filling balanceperformance measurement, the present invention also introduces newmethods for quantifying Clamping force balance performance measurement(P_(c)) (see Step 310) and Drop balance performance measurement (P_(d))(see Step 312).

At Step 306, the flow path balance performance measurement (P_(f)) iscalculated. The present invention developed a Flow Path Balance Ratio(FPBR) to quantify the filling balance performance of a large number ofFMCRLD alternatives rapidly for fitness evaluation in GA without usingtime-consuming and computer-intensive mould flow CAE simulations toevaluate numerous different FMCRLD alternatives. FIG. 22 shows anillustrative example of flow paths of four dissimilar cavities in afamily mould. The Flow Path (FP) of each individual flow group consistsof its individual Runner Flow Path (RFP) and its Cavity Flow Path (CFP).RFP is the total length of various runner branches delivered from thesprue to the gate of the cavity. CFP is the estimated longest flowlength measured from the selected gating location to the boundary of thecavity. The FPBR is defined as the average variation of Flow Path (FP)relative to the minimum FP across all flow groups (see Equation 7). Thesmaller the FPBR is the better the filling balance performance that canbe achieved. If all FP across all flow groups are the same, FPBR will beequal to one in the ideal case for filling balance performance. In thepresent invention, a Flow Path Balance Performance value (P_(f)) isfirst developed to measure the relative performance of an individualcompared to the user-defined goal value of the FPBR (see Equation 8).

$\begin{matrix}{{{Flow}\mspace{14mu} {Path}\mspace{14mu} {Balance}\mspace{14mu} {Ratio}\mspace{14mu} ( {F\; P\; B\; R} )} = \frac{{\sum\limits_{i = 1}^{n}( {F\; {P_{i}/F}\; P_{\min}} )} - 1}{n - 1}} & (7)\end{matrix}$

where i is the index number of individual cavity, n is the total numberof cavities in the family mould, FP_(i) is the flow path length measuredfrom the starting point of the sprue to the boundary of the cavity (mm),and FP_(min) is the minimum flow path length among all flow path lengths(mm).

$\begin{matrix}{{{Flow}\mspace{14mu} {Path}\mspace{14mu} {Balance}\mspace{14mu} {Performance}\mspace{14mu} ( P_{f} )} = {\frac{F\; P\; B\; R_{goal}}{F\; P\; B\; R_{i}}*100\%}} & (8)\end{matrix}$

where FPBR_(goal) is the user-defined goal FPBR value (ideally equal to1), and FPBR_(i), is the FPBR value of design solution (i).

At Step 308, the runner diameter balance performance (P_(r)) iscalculated. The Flow Path Balance Ratio (FPBR) focuses on measuring theaverage variation of FP relative to the minimum FP across all flowgroups, but it cannot consider the effect of possible flow hesitationcaused by the significant variation of diameters of all runner segments.As shown in FIG. 23, different FMCRLD alternatives have differentnumbers of runner segments with different lengths and branching nodesresulting in different variations of the diameters of each runnersegments. In the present invention, a Runner Diameter Balance Ratio(RDBR) is first developed to measure the variation of runner diametersat each runner branching node (see Equation 9). For example, RDBR atJ_(1,1) is equal to 1.22 (R_(1,1)/R_(1,2)=5.5/4.5). RDBR at J_(1,2) isequal to 1.33 (R_(1,3)/R_(1,4)=4.0/3.0). RDBR at J_(1,3) is equal to1.25 (R_(1,5)/R_(1,6)=2.5/2.0). The overall RDBR of FMCRLD solution (i)is defined as the maximum RDBR across all junctions (see Equation 10).In this case, the overall RDBR is less than two. This means that thisFMCRLD solution has a better chance of avoiding possible flow hesitationoccurring at runner branching nodes. The present invention first definesa Runner Diameter Balance Performance value (P_(r)) to measure therelative performance of an individual compared to the user-defined goalvalue of the Runner Diameter Balance Ratio (RDBR) (see Equation 11).

$\begin{matrix}{{{Runner}\mspace{14mu} {Diameter}\mspace{14mu} {Balance}\mspace{14mu} {Ratio}\mspace{14mu} ( {R\; D\; B\; R} )\mspace{14mu} {at}\mspace{14mu} {junction}\mspace{14mu} ( J_{i,j} )} = \frac{R_{\max}\mspace{14mu} {at}\mspace{14mu} {junction}\mspace{14mu} ( J_{i,j} )}{R_{\min}\mspace{14mu} {at}\mspace{14mu} {junction}\mspace{14mu} ( J_{i,j} )}} & (9)\end{matrix}$

where R_(max) is the maximum runner diameter (mm) at junction (J_(i,j))excluding the input runner, R_(min) is the minimum runner diameter (mm)at junction (J_(i,j)) excluding the input runner, i is an indexreferring to Design solution (i), and j is an index referring toJunction (j) of Design solution (i).

RDBR_(i)=max{RDBR_(i,1),RDBR_(i,2) . . . RDBR_(i,n)}  (10)

where RDBR_(i) is the maximum value across all RDBR at junction(J_(i,j)), i is an index referring to Design solution (i), j is an indexreferring to Junction (j) of Design solution (i), and n is the totalnumber of junctions in the runner system of Design solution (i).

$\begin{matrix}{{{Runner}\mspace{14mu} {Diameter}\mspace{14mu} {Balance}\mspace{14mu} {Performance}\mspace{14mu} ( P_{r} )} = {\frac{R\; D\; B\; R_{goal}}{R\; D\; B\; R_{i}}*100\%}} & (11)\end{matrix}$

where RDBR_(goal) is the user-defined goal RDBR value (usually equal to1.2), and RDBR_(i) is the RDBR value of design solution (i).

At Step 310, the clamping force balance performance (P_(c)) iscalculated. One of the mould layout design objectives is to keep the sumof all reactive forces in the centre of gravity of the platen. In otherwords, cavities should be arranged about the centre of the mould assymmetrically as possible to ensure an even and adequate clamping forceover the entire mould area. As shown in FIG. 24, the present inventionmakes use of the centre of the resultant clamping force 318 acting onall dissimilar moulding parts located in different locations withrespect to the centre of a family mould 320 to measure the clampingforce balance performance of a FMCRLD alternative (as calculated usingEquations 12 and 13). The offset dimension (d) is defined as the offsetdistance between the centre of the resultant clamping force 318 and thecentre of the family mould 320 for the given cavity layout design (ascalculated using Equation 14). The smaller the offset dimension (d) isthe better clamping force balance performance that can be achieved. Thepresent invention defines a clamping force balance performance value(P_(c)) to measure the relative performance of an individual compared tothe user-defined goal value of the offset dimension (d) (see Equation15).

$\begin{matrix}{X_{c} = \frac{\sum\limits_{i = 1}^{n}( {F_{i}*X_{i}} )}{\sum\limits_{i = 1}^{n}F_{i}}} & (12) \\{Y_{c} = \frac{\sum\limits_{i = 1}^{n}( {F_{i}*Y_{i}} )}{\sum\limits_{i = 1}^{n}F_{i}}} & (13)\end{matrix}$

where X_(c) is the X-coordinate of the centre of the resultant clampingforce 318 measured from the centre of the family mould 320, Y_(c) is theY-coordinate of the centre of the resultant clamping force 318 measuredfrom the centre of the family mould 320, i is the index of individualmoulding part in the family mould, n is the total number of mouldingparts in the family mould, F_(i) is the estimated clamping force for themoulding part (i), X_(i) is the X-coordinate of the centre of theestimated clamping force acting on the moulding part (i) measured fromthe centre of the family mould 320, and Y, is the Y-coordinate of thecentre of the estimated clamping force acting on the moulding part (i)measured from the centre of the family mould 320.

$\begin{matrix}{d = \sqrt{( X_{c} )^{2} + ( Y_{c} )^{2}}} & (14) \\{{{Clamping}\mspace{14mu} {force}\mspace{14mu} {balance}\mspace{14mu} {performance}\mspace{14mu} ( P_{c} )}\; = {\frac{d_{goal}}{d_{i}}*100\%}} & (15)\end{matrix}$

where d_(goal) is the pre-defined goal value of the offset distance ofthe centre of the resultant clamping, and d_(i) is the offset distanceof the individual design solution (i).

At Step 312,=the drop time performance (P_(d)) is calculated. FIG. 25shows a drop height of moulding parts of a family mould. FMCRLD affectsthe drop height (h_(i)) of the moulding parts. Assuming that the producthas no initial speed downward at the point of ejection, the estimateddrop time can be calculated using Equation 16. Accordingly, the droptime performance value (P_(d)) is defined to measure the relativeperformance of an individual compared to the user-defined goal value ofthe drop time (see Equation 17).

t _(i)=√{square root over (2h _(i) /a)}  (16)

where t_(i) (second) is the time of free fall for the design solution(i), h_(i) (m) is the falling distance required to clear the mouldingarea before re-closing the mould, and a is the gravity (m/s²).

$\begin{matrix}{{{Drop}\mspace{14mu} {time}\mspace{14mu} {performance}\mspace{14mu} ( P_{d} )} = {\frac{t_{goal}}{t_{i}}*100\%}} & (17)\end{matrix}$

where t_(goal) is the pre-defined goal value of the drop time, and ti isthe estimated drop time of Design solution (i).

At Step 314, the weighted sum fitness value is calculated. The objectiveof using Cost Performance (CP) to represent the “fitness” value in thepresent invention is to search for a group of design solutions having agood balance of performance over cost. The cost factor consists of thecosts of mould insert material (see Step 294), mould base (see Step296), runner material (see Step 298), sliders (see Step 300), injectionmoulding (see Step 302) and penalty (see Step 304). The performancefactor involves flow path balance performance (see Step 306), runnerdiameter balance performance (see Step 308), clamping force balanceperformance (see Step 310) and drop time performance (see Step 312). Incurrent practice, the performance and cost objectives for eachindividual family mould design may be different from case to casedepending on the different mould specifications and requirements. Insome embodiments, the objectives are: the drop height performance can beignored, the pressure drop balance is the most important factor, and thecost of runner material and sliders are less important than the cost ofthe mould base. In other embodiments, the cost of the mould base may bethe main concern. The priority of each sub-objective must be able to bechanged individually for different mould specifications andrequirements. Therefore, a simple weighted sum approach is adopted inthe present invention for combining a number of performance goals,incurred costs and penalty into a single CP value using Equation 18.

$\begin{matrix}{{CP} = \frac{{K_{m}( C_{m} )} + {K_{n}( C_{n} )} + {K_{r}( C_{r} )} + {K_{s}( C_{s} )} + {K_{j}( C_{j} )} + {K_{p}( C_{j} )}}{{W_{f}( P_{f} )} + {W_{r}( P_{r} )} + {W_{c}( P_{c} )} + {W_{d}( P_{d} )}}} & (18)\end{matrix}$

where P_(f) is the flow path balance performance value (%), P_(r) is therunner diameter balance performance value (%), P_(c) is the clampingforce balance performance value (%), P_(d) is the drop height balanceperformance value (%), W_(f) is the weighting ratio of P_(f), W_(r) isthe weighting ratio of P_(r), W_(c) is the weighting ratio of P_(c),W_(d) is the weighting ratio of P_(d), C_(m) is the cost of the mouldbase (HK$), C_(n) is the cost of mould insert material (HK$), C_(r) isthe cost of runner material for the whole production volume (HK$), C_(s)is the cost of sliders (HK$), C_(j) is the cost of injection moulding(HK$), K_(m) is the weighting ratio of C_(m), K_(n) is the weightingratio of C_(n), K_(r) is the weighting ratio of C_(r), K_(s) is theweighting ratio of C_(s), K_(j) is the weighting ratio of C_(j), K_(p)is the penalty factor, W_(f)+W_(r)+W_(c)+W_(d)=1, andK_(m)+K_(n)+K_(r)+K_(s)+K_(j)=1.The total cost incurred to achieve such overall performance improvementis the sum of all sub-costs (HK$) multiplied by their correspondingweighting ratios. The sum of W_(f), W_(r), W_(c) and W_(d) must be equalto 1. The sum of K_(m), K_(n), K_(r), K_(s) and K_(j) must be equalto 1. Mould designers can adjust the weighting ratios according to theirdesired objectives. For example, W_(d) can be set to zero if the dropheight performance can be ignored. If the cost of the mould base is moreimportant than the cost of sliders, users can set K_(m) higher thanK_(s). K_(p) is a penalty factor for adjusting the weighting ratio ofthe penalty cost of injection moulding (C_(j)).

At Step 316, the cost performance data is written to the Fitness valuedata list stored in the system memory.

FIG. 26 illustrates a tournament selection strategy adopted in thepresent invention. The tournament selection strategy simulates themating battles often seen in nature by mutual “competition” of sindividuals (tournament size) chosen at random from the population. Inthe mating battle of two individuals (s=2), the winner 322 (individualwith comparatively higher fitness) is selected and the loser 324(individual with comparatively lower fitness) is put back into thepopulation. This mating battle is repeated until the required number ofindividuals for reproduction is selected.

FIG. 27 illustrates a novel group-oriented SG-based crossover operator,which is specially developed to fit the properties of the newvariable-length SG-based chromosome. This new group-oriented SG-basedcrossover operator integrated with a SG and knowledgebase aims toreproduce valid offspring during the evolutionary process. In thepresent invention, the crossover operator works with a SG of FMCRLDincorporated with a mould design knowledgebase. As shown in FIGS. 27 aand 27 b, the first step is to select at random a crossing group in theGroup Layout Shape Rules Session in each of the two parents with apredetermined crossover rate. The crossover rate can be set between 0.3and 1.0, and reflects a proportion of a number of crossing groups to atotal number of cavity groups in each of the two parents. For example,if the crossover rate is set to 0.3, the number of crossing groups forP1 and P9 will be equal to 0.3×3=0.9 (corrected to an integer valueof 1) and 0.3×4=1.2 (corrected to an integer value of 2) respectively.Accordingly, Group 3 of the first parent (P1) and Groups 2 and 3 of thesecond parent (P9) are selected at random. If the crossover rate is setto 1.0, no crossover will occur because there will be only clones of theparents. As shown in FIGS. 27 c and 27 d, the second step is to injectthe crossing groups of both parents to each other. The allele in theorientation session and the group session associated with the crossingsection of the second parent (P9) are copied to the corresponding locusof the first parent (P1), and vice versa. The last step is to eliminateall objects occurring twice and empty groups as shown in FIGS. 27 e and27 f. Accordingly, the slider will also be automatically changed basedon the new location and orientation of the moulding parts in the newFMCRLD. Because of the SG of FMCRLD, the group placement design,regeneration of the internal cavity layout design and the runner layoutdesign can be performed of the new offspring can be intelligentlyregenerated while maintaining the feasibility of FMCRLD after thecrossover operation (see FIGS. 27 g and 27 h). It is noticed thatoffspring C1 inherits the single slider design for Parts 2 and 3 fromP1. Offspring C2 can inherit not only the single slider design for Parts2 and 3 from P9 but also the balanced runner layout design from P1. Inother application areas, the crossover operator can work with differentsets of SG rules incorporated with different design knowledgebase in thesame manner. This new group-oriented SG-based crossover operator caninherit or combine meaningful features from both parents to reproduce astronger offspring without violation of the design constraints anddisruption of the useful moulding parts (schemata) of the chromosomeduring recombination. The proportion of features inherited from each ofthe parents is controlled by the crossover rate.

A mutation operator aims to introduce new species into the population inthe GA to explore the solution space by performing random modificationof an individual's gene value. In the present invention, three types ofSG-based mutation operators are specially developed for the (i)orientation session (see FIG. 28 for more details), (ii) group session(see FIG. 29 for more details), or (iii) group layout shape rulessession (see FIG. 30 for more details) of the new hybrid SG-basedchromosome. One of these mutation operators for different sessions isselected at random and is applied to the offspring chromosome based on apredetermined mutation rate. The mutation rate can be set to between 0.0and 1.0, and decides how often the offspring chromosome will be mutated.A random number between 0.0 and 1.0 is generated for each offspringchromosome reproduced at each generation that is less than or equal tothe mutation rate (for example, 0.1), then the mutation operation isperformed. A mutation rate of 0.0 means that no mutation will occur. Amutation of 1.0 means that all offspring chromosomes will be mutated.

FIG. 28 illustrates the mutation of the allele of the gene in theorientation session. The first gene (representing Part 1) is selected atrandom. The allele of this gene is flipped from zero to one. Theorientation of Part 1 will be changed from horizontal to vertical ifthere is no violation of the design constraint of the allowable gatelocation of the moulding part, existing runner layout and the space forthe slider.

FIG. 29 illustrates the mutation of the allele of the gene in the groupsession—change group and eliminate empty groups. In the group session,mutation changes groups and eliminates empty groups, if any. As shown inFIG. 29, the third gene (representing Part 3) in the group session isselected at random. Its allele (representing the group number) ischanged to any group randomly selected from the existing other groups orto a new group created randomly. In this example, the group of Part 3 ischanged from 2 to 4. According to the group placement rules of Group 4,the internal cavity layout and runner layout for Parts 3 and 4 isgenerated automatically. Then, Group 2 becomes empty and it will beeliminated.

FIG. 30 illustrates the mutation of the allele of the gene in the groupsession—create a new group. In this example, Group 4 is newly generatedat random. The forth gene (representing Part 4) in the group session isselected at random. According to the group placement rules of Group 4,the internal cavity layout and runner layout for Part 4 is generatedautomatically.

FIG. 31 illustrates the mutation of the allele of the gene in the grouplayout shape rules session. In the group layout shape rules session,mutation modifies the group placement shape rule, internal cavity layoutrule or runner layout shape rule of the cavity group selected at random.In this example, the gene (representing the group placement shape ruleof Group 2) is selected at random. If its allele is modified from 6 to2, the phenotype will be changed accordingly.

FIG. 32 shows the program flow chart of the system output interfacemodule. The system output interface module is composed of three keymodules: (1) Rapid visualisation module 332 (see FIG. 33 for moredetails), (2) Evolutionary process analysis module 334 (see FIG. 34 formore details) and (3) CAD model generator module 336 (see FIG. 35 formore details).

FIG. 33 shows the graphical user interface of the evolutionary process.The resulting population can be obtained from the evolutionary FMCRLDmodule (see FIG. 18). Then the “rapid visualisation module” (see FIG.35) is activated automatically to display the results in the maindialogue box menu.

FIG. 34 shows the dialogue menu of the evolutionary process. Moulddesigners can browse the number of generations one by one using thegraphical user interface as shown in the layout of “Current Generation”.The values of average Cost Performance (CP), best Cost Performance (CP)and so forth of the selected generation are shown in the layout of“Generation Statistics” in FIG. 34. All individuals of the population ofthe selected generation are listed in the table (see the table below thelayout of “Generation Statistics” in FIG. 34). This table shows theinformation of each individual such as individual identity number,chromosome, CP value and so forth. When a mould designer highlights oneof the individuals in the table, the instant visualisation of itsphenotype is shown in the graphic window (see FIG. 33). Mould designerscan press the “Analysis function” button to activate the “Evolutionaryprocess analysis module” to study the line chart of CP plotted againstgenerations.

FIG. 35 shows the program flow chart of the rapid visualisation module332. At Step 338, users are required to input the generation number (j)in the dialogue box menu. Then, the program reads the chromosome data atgeneration (j) from the “chromosome_data_list” and the fitness data atgeneration (j) from the “fitness_data_list” at Step 340. Step 342 is todisplay the data in the dialogue box menu as shown in FIG. 34. Whenusers select one of the individuals listed in the table at Step 344, theprogram reads data related to the individual (i) from the“population_data_list” at generation (j) at Step 346. Then, the mouldingpart models are moved to their corresponding assembly coordinates andorientation stored in the “cavity_data_list” at Step 348. Step 350involves reading data related to the individual (i) from the“insert_data_list” and drawing graphic entities on the graphic screen torepresent the boundary box of the mould insert. Similarly, Step 352involves reading data related to the individual (i) from the“runner_design_data_list” and drawing graphic entities on the graphicscreen to represent the runner layout design. Step 354 involves readingdata related to the individual (i) from the “slider_design_data_list”and drawing graphic entities on the graphic screen to represent the topview of the sliders. Finally, Step 356 involves reading data related tothe individual (i) from the “mould_data_list” and drawing graphicentities on the graphic screen to represent the top view of the mouldbase (see FIG. 33).

FIG. 36 shows the program flow chart of the evolutionary processanalysis module 334. Once the analysis function is activated by users atStep 360, the program obtains the chromosome data of all generationsfrom the “chromosome_data_list” and the fitness data of all generationsfrom the “fitness_data_list” at Step 362. Then the data are exported tothe Microsoft® Excel® 2003 at Step 364. Finally, the line chart offitness values is plotted against generations at Step 366 (see FIG. 39).

FIG. 37 shows the program flow chart of the CAD model generator module336. At Step 370, users select an individual (i) from the table in thedialogue box menu as shown in FIG. 34. When users press the “OK” buttonin the dialogue box menu (see FIG. 34) at Step 372, the program obtainsthe data related to the individual (i) from the “cavity_data_list” atStep 374. Then, at step 376, all moulding part models are assembledtogether with the main assembly model according to their correspondingassembly coordinates and orientation. Step 378 involves reading datarelated to the individual (i) from the “insert_data_list” and creatingthe mould insert model in the main assembly model. Step 380 involvesobtaining the data related to the individual (i) from the“runner_design_data_list” and creating the runner features in the mainassembly model. At Step 382, the program retrieves the mould basesub-assembly model from the mould design CAD model library and assemblesit together with the main assembly model, and updates the dimensionalparameters of the mould base assembly with the data related to theindividual (i) obtained from the “mould_base_data_list”. Similarly, atStep 384, the slider sub-assembly model is retrieved from the moulddesign CAD model library and is assembled together with the mainassembly model, and the dimensional parameters of the slidersub-assembly model is updated with the data related to the individual(i) obtained from the “slider_design_data_list”. Then, Step 386 is togenerate a mould layout drawing of the main assembly model using thecustomised drawing template. Finally, Step 388 involves generation ofthe Bill of Material (BOM) according to the main assembly model andshowing the attribute values (such as the project name, mould base modelnumber, type of gate and so forth) and the key dimensions (such as thedimensions of the mould base and the mould insert) in the mould layoutdrawing.

Operation:

In practice, it is difficult to design a good FMCRLD for dissimilarmoulding parts having significant variations in sizes. In an attempt tosearch for the optimum FMCRLD solutions with good filling balanceperformance and the use of smaller mould bases, the weighting ratios ofP_(f), P_(r) and C_(m) are set to be higher than others for thisexample. The setting of design objectives and constraints used in thisexample are summarised in Table 2. The performance of the GA depends onthe choice of GA parameters. One of the most important parameters is thepopulation size. If the population size is too small, the GA may notexplore enough of the solution space to consistently find good solutionsleading to a premature convergence problem. The larger the populationsizes, the greater the chance that the GA can find global optimumsolutions because of its more diverse gene pool. However, a very largepopulation would be computationally expensive. There should be anoptimum value in between, but finding an optimum setting of GAparameters is problem-specific and outside the scope of this invention.This invention focuses more on accelerating mould designers' designalternative exploration, exploitation and optimisation for better designin less time. In an attempt to provide a more diverse gene pool for theGA to explore and exploit more design alternatives to search for globaloptimum solutions in a limited time, a reasonably large population ofabout 500 is chosen for this experimental first try. The setting of allthe GA parameters used in this example is listed in Table 3. Ifnecessary, the GA parameters may need to be adjusted according to theoptimisation results. Users can input the aforementioned GA parameters,design objectives and constraints using the input interface module asshown in FIG. 16-17. Then users can press the start button as shown inFIG. 34 to run the evolutionary process.

Based on the proposed GA and SG of FMCRLD integrated with mould designknowledge, the system can automatically generate a number of differentfeasible FMCRLD alternatives at random. FIG. 38 shows some examples ofinitial generation of FMCRLD alternatives. As shown in FIG. 39, theresult of the evolutionary design process is illustrated by the graph ofAverage CP and Best CP vs. generations. The six different designs(starting from a to f) attached to the Best CP curve represent the bestindividual obtained in the population in different generations. Design(a) is obtained from the initial random generation of designs andbecomes the best one due to its relatively higher P_(f) value (see Table4). After a number of generations, a new Design (b) with a lower C_(m)value is evolved from parents through the proposed crossover andmutation operations. Using the steady-state population model, the bestindividuals from the previous generation can always be preserved in thenext generation. The worst individual is replaced by the betteroffspring in each generation. All individuals violating the mould basesize constraint are penalised and they are replaced by better offspringeventually. Due to the higher weighting ratio on P_(f), P_(r), C_(m) andC_(n), individuals with a more balanced runner layout system, smallermould base and mould insert can have better fitness values to surviveand reproduce. More and more stronger offspring can be produced in thepopulation. As shown in the “Average CP” curve in FIG. 39, the averageCP value of the population is improving from generation to generation.As shown in the “Best CP” curve in FIG. 39, Design (e) appears at 87generations and can keep the top position for a number of generations.Then, a new Design (f) is introduced into the population from mutationof Design (e) at 177 generations. Finally, the algorithm stops at 377generations automatically because there is no change in the best CPvalue for over 200 generations. The running time is about 78 seconds. Inthis example, the average CP value of the population is improved from182.46 to 102.62 (see the “Average CP” curve in FIG. 39). The best CPvalue is improved from 123.54 to 74.02 (see the “Best CP” curve in FIG.39). The best value of Cost and Performance obtained are 6000.56 and81.07 respectively (see the row of Design (f) in Table 5). This resultshows that the best individual—Design (f) achieves the best performanceand cost objectives among all individuals generated in all previousgenerations. If necessary, users can rerun the program using differentsets of GA parameters, design objectives and constraints to explore thesolution space. Besides, the present invention also provides rapiddesign visualisation and design feedback for users to fine-tune thedesign interactively. Then users can select the best trade-off solutionbetween performance and cost. Based on the best solution, the ICMDLS canautomatically generate the 3D mould layout design model for downstreamdetail mould design and manufacturing (see FIG. 40). Concurrently, themould layout drawing associated with a table of bill of material, moulddesign configuration and specification can also be generatedautomatically. The detail FMCLRD drawing is shown in FIG. 41.

TABLE 2 The setting of design objectives and constraints in oneembodiment Design objectives and constraints Setting value Performancegoals Flow Path Balance Ratio (Pf) 1.0 Runner Diameter Balance Ratio(Pr) 1.2 Clamping Froce Balance value (Pc) 10.0 Drop Time value (Pd) 0.2Performance objective weighting ratio Weight of (P_(f)) 0.35 Weight of(P_(r)) 0.35 Weight of (P_(c)) 0.20 Weight of (P_(d)) 0.10 Costobjective weighting ratio Weight of (C_(m)) 0.50 Weight of (C_(n)) 0.20Weight of (C_(r)) 0.10 Weight of (C_(s)) 0.10 Weight of (C_(j)) 0.10Constraints Penality factor (K_(p)) 0.1 Maximum X 510.0 Maximum Y 510.0Constraint type soft

TABLE 3 The initial setting of GA parameters in one embodiment GAparameter Setting value Population size 500 Number of generation 1000Generation gap (G) 1 Crossover rate 0.50 Mutation rate 0.10 Tournamentsize 2 Stall generation 200 Maximum running time (sec) 120

TABLE 4 The detailed cost and performance values of each outstandingindividual at different generations Performance Cost Design P_(f) P_(r)P_(c) P_(d) C_(m) C_(n) C_(r) C_(s) C_(j) Penalty a 81.30 55.30 27.3081.21 4334.40 475.20 28233.62 3080.00 21903.33 0.00 b 64.52 43.64 32.1282.61 2912.76 472.50 24267.31 3200.00 20383.33 0.00 c 74.07 60.00 26.2488.59 3314.52 378.00 20905.93 2688.00 20383.33 0.00 d 84.03 75.00 30.9384.47 4334.40 407.36 19155.36 2760.00 21908.33 0.00 e 86.21 98.36 20.7071.16 2907.00 486.00 20913.49 3200.00 24183.33 0.00 f 90.91 98.36 32.8382.61 2912.76 472.50 20913.49 3200.00 20383.33 0.00

TABLE 5 The weighted cost performance values and chromosomes of eachoutstanding individual at different generations Design Chromosome CP P Ca 1100: 1324: (5, 3, 1)(6, 1, 1)(7, 3, 1) 123.54 61.39 7584.44 (8, 1, 1)b 0100: 1234: (6, 1, 1)(4, 3, 1)(3, 3, 1) 120.60 52.54 6335.94 (3, 3, 1)c 1100: 1234: (5, 3, 1)(2, 3, 1)(3, 3, 1) 100.45 61.03 6130.59 (3, 3, 1)d 1000: 2111: (5, 3, 1)(7, 3, 1) 94.33 70.29 6631.04 e 1100: 1233: (6,1, 1) (4, 3, 1) 84.11 75.85 6380.38 (3, 3, 1) f 0100: 1233: (6, 1, 1)(4, 3, 1) 74.02 81.07 6000.56 (3, 3, 1)

The exemplary embodiments of the present invention are thus fullydescribed. Although the description referred to particular embodiments,it will be clear to one skilled in the art that numerous variationsand/or modifications may be made to the present invention withoutdeparting from the spirit or scope of the invention as broadlydescribed. Hence this invention should not be construed as limited tothe embodiments set forth herein.

The present invention is originally implemented as a third partyapplication program seamlessly embedded into a commercial MCAD system tosupport FMCRLD automation and optimisation during the FMLD phase.However, there are many alternative embodiments that the presentinvention can be implemented.

Firstly, the efficiency and accuracy of cost estimation of family mouldslargely rely on a quick and good FMCRLD decision made in the earlyquotation stage. However, no existing commercial software packages orpatents can support automatic cost estimation of family moulds based onoptimum FMCRLD solutions. The present invention can automaticallygenerate multiple optimum FMCRLD solutions for users to select the besttrade-off solution between performance and cost. Accordingly, the costcomponents (such as C_(n), C_(m), C_(r), C_(s) and C_(j)) of eachoptimised solution are calculated for fitness evaluation beforehand.These cost components determine the critical cost of a family mould. Ifthe approximate manufacturing cost of each dissimilar cavity in a familymould can be input by the users or automatically estimated using otherwell-known mould cost estimation techniques, the present invention canbe implemented not only as an intelligent design tool but also as aninnovative cost estimation solution to fill the market gap in the areaof cost estimation of family moulds.

Secondly, existing commercial mould flow CAE software packages, such asMOLDFLOW® Insight and Moldex3d®, cannot perform automatic artificialfilling balance considering the global optimisation of cavity layout,runner lengths and diameters simultaneously. The present invention canprovide the best FMCRLD for mould flow CAE engineers to achieve theglobal optimum artificial filling balance in the early mould designphase, saving a huge amount of time and money spent on performingartificial filling balance on numerous different FMCRLD alternatives. Ifthe present invention can be seamlessly integrated with the existingcommercial mould flow CAE software packages, it will become a powerfulautomatic design and analysis tool for solving the complex problem ofthe global optimisation of artificial filling balance of family mouldsin industry.

Thirdly, traditional family moulds have not been acceptable for highprecision applications due to the difficulties of balancing dissimilarcavities. Family moulds have been largely limited to low tolerancemoulding parts over the years. However, this will no longer be alimitation if all dissimilar moulding parts of a family mould can bedirect-gated and perfectly balanced with advanced Dynamic Feed® hotrunner technology. The Dynamic Feed® hot runner system can provide realtime closed loop pressure control to each dissimilar cavityindependently, achieving tight dimensional control of each moulding partregardless of the dissimilar cavity geometries and sizes in a familymould. However, the major drawback of incorporating this dynamic feedsystem in a traditional family mould is the high start-up cost(approximately US$60,000 for a typical 4-drop mould). Therefore, it isnot economic to build such expensive stand-alone dynamic feed hot runnerfamily moulds only for one-off low-volume production of high precisioninjection moulding parts, not to mention for prototype quantities.However, if the expensive dynamic feed hot runner system can be reusedfor a number of different low-volume or prototype mould projects overand over again, the combination of the dynamic feed hot runnertechnology with the family mould concept will become a flexible andcost-effective solution. In the aspect of the modular tooling concept,the virtual cavity groups used in the present invention can be viewed asflexible modular tooling components manufactured for different productsfor different customers sharing the same mould base and the expensivedynamic feed hot runner system. As shown in FIG. 42, the 4-drops dynamicfeed hot runner system 390 is incorporated in the universal“quick-change” mould base 392 capable of producing different mouldingparts with four interchangeable mould inserts at once. Eachinterchangeable mould insert module 394 can be regarded as an individualsmall mould sub-assembly having its own cavities, runners, coolingcircuit, sliders, ejectors and cavity pressure sensors, while the hotrunner drop can be viewed as a hot runner nozzle for each small mould.This highly flexible modular mould combined with dynamic feed hot runnertechnology can offer faster lead times on tooling, lower tooling costsand better operational efficiency. On the other hand, Tandem moulds canbe viewed as alternatively opening stack moulds having two partinglevels allowing for alternatively filling and subsequently de-mouldingduring the operational cycle (see FIG. 43). Especially when the coolingtimes are relatively long, this alternative moulding process of a tandemmould can make use of the idle time to perform other moulding tasks onanother parting level to increase the productivity like merging twomoulds into one. If this Tandem mould concept is combined with thedynamic feed hot runner modular mould, it can achieve the double outputwithin the same cycle time as in the standard mould. However, noresearch, commercial software packages or patented system can supporthot runner layout design automation and optimisation for family moulds.The present invention can be customised to support design automation andoptimisation of a dynamic feed hot runner tandem modular mould by addinga set of SG runner layout rules. The existing fitness evaluationfunction developed in this invention can be reused, but the estimatedcost of the hot runner system must be added to the cost function.Besides, the existing rule for selecting the mould base must also bemodified to accommodate the hot runner assembly. Then the presentinvention will be able to search for the global optimum cavity and hotrunner layout design of a family mould considering a number of designobjectives and constraints in relation to both hot runner layout designand family mould design. With regard to dynamic feed hot runner modularmould design automation and optimisation, it also can be viewed as acomplex combinatorial FMCRLD optimisation problem. In the case ofordinary 4-drops hot runner module tooling (single parting level), thenumber of cavity groups is fixed at 4. Accordingly, the algorithm forgenerating the initial population can be used to generate the fixedinternal cavity layout and the primary hot runner layout. The existingchromosome design and the SG rules can be reused, but genetic operationson the gene for storing the group placement rule number in the groupsession are omitted. Each cavity group can be viewed as a smaller mouldaccommodated inside a bigger mould base. The usable area of the smallermould is fixed. Therefore, a new penalty function for handling theconstraints of oversized cavity groups should be added to the fitnessevaluation function. Besides, the algorithm for grouping sliders shouldconsider the grouping of sliders for each cavity group instead of eachside of the mould. In the case of 8-drops tandem modular tooling (twoparting levels and 4-drops on each level), the number of cavity groupsshould be fixed at 8. For example, cavity groups 1-4 are on level 1while cavity groups 5-8 are on level 2. A new set of runner layout SGrules also needs to be added for generating runner layout on differentparting levels. Then the present invention can automatically determinethe best combination of cavity grouping and runner layout design foreach interchangeable mould insert.

Some function-oriented architectural space layout design projects (suchas for hospitals, factories and airports) involve not only designingtopological and geometrical relationships but also combinatorialgrouping problems among space elements. For example, different groupingof functional departments in a hospital, facilities in a factory, andfunctional areas in an airport affect their working capacity andworkflow efficiency. By analogising the FMCRLD to the architecturalspace layout design, a space element can be viewed as a room, departmentor group of facilities. The runner network connecting all cavities canbe considered the travelling path network connecting all departments orwork groups, or a HVAC (Heating, Ventilation and Air Conditioning)routing network in the building. The mould base size constraint can beregarded as a limitation of the usable area in the construction site.Similarly, a space element can be an electronic component in a circuitboard, a component in a machine, a paragraph, article or advertisementin a web page, magazine or newspaper, an item in a user-interface menuof a device and so forth. A space element's group can be a module in acircuit board, a module in a machine, a functional group in a web page,magazine or newspaper, a module in a user-interface menu of a device andso forth. A network connecting all space elements can be viewed as awiring in a circuit broad and machine, visual travelling path in a webpage, magazine or newspaper, a visual and pointing device travellingpath in a user-interface menu of a device and so forth. The presentinvention provides the hybrid SG-based chromosome and group-orientedSG-based genetic operators that enable GA to automate and optimise awide range of complex combinatorial layout design problems.

What is claimed is:
 1. A method for family mould layout design using acomputer, comprising: a) providing a knowledgebase for said family mouldlayout designs; b) providing a means for encoding said family mouldlayout designs to chromosomes; c) providing a Genotype-Phenotype mappingmodule for decoding said chromosomes to phenotypes, wherein each saidphenotype represents a family mould layout solution; d) receiving designspecific parameters via a user input interface module, said designspecific parameters comprising information of a plurality of mouldingparts, design objectives and constrains, moulding requirements,predefined parameters and stopping criteria; e) invoking a GeneticAlgorithm module to generate a population of valid chromosomes andevolve said population towards a resulting population satisfying saiddesign specific parameters over successive generations wherein in eachsaid generation, said population of valid chromosomes is mapped to acorresponding population of family mould layout solutions utilising saidGenotype-Phenotype mapping module; f) facilitating users to learn andsearch for a best family mould layout solution by exploring andvisualising different optimised family mould layout solutions through aninstant design feedback of quantitative fitness values; and g)generating a mould design assembly model and mould layout drawingaccording to said best family mould layout solution.
 2. The methodaccording to claim 1, wherein said knowledgebase further comprises: a)group placement rules; b) internal cavity layout rules; c) runner layoutshape rules; d) a plurality of mould design knowledgebase, wherein saidplurality of mould design knowledgebase comprise standard mould basedatabase, empirical formulae of runner size, empirical cavity layoutdesign rules and empirical design rules of sliders; and e) feasiblefamily mould layout design alternatives generated by applying said groupplacement rules, said internal cavity layout rules, and said runnerlayout shape rule to various initial shapes.
 3. The method according toclaim 2, wherein said family mould comprises at least two cavity groupswith each said cavity group comprising at least one cavity; said atleast one cavity within each said cavity group being connected by atleast one runner; wherein said means of encoding further comprises thesteps of a) encoding orientation of said at least one cavity by anorientation session of said chromosome; b) encoding cavity groupingdesign information by a group session of said chromosome, and c)encoding geometric and topological layout information of said at leastone cavity and said at least one runner by a variable-length grouplayout shape rule session of said chromosome.
 4. The method according toclaim 3, wherein said Genotype-Phenotype mapping module furthercomprises the steps of: a) reading data of said chromosome; b) decodingeach said chromosome based on said knowledgebase; c) for each saidcavity group, computing assembly coordinates for each said at least onecavity and generating said at least one runner for connecting said atleast one cavity within said cavity group; d) selecting a suitable mouldbase from said standard mould base database in said knowledgebase foraccommodating said cavity groups computed from step (c); e) determiningdiameter of each said at least one runner according to said empiricalformula of runner sizes in said knowledgebase; and f) determiningconfigurations of sliders based on said empirical design rules ofsliders in said knowledgebase.
 5. The method according to claim 3,wherein said Genetic Algorithm module further comprises the steps of: a)generating a population of valid chromosomes based on saidknowledgebase; b) decoding said population of valid chromosomes to apopulation of phenotypes utilising said Genotype-Phenotype mappingmodule; c) evaluating fitness values of said population of phenotypesusing a fitness evaluation algorithm; d) selecting two chromosomes fromsaid population of valid chromosomes as parents based on said fitnessvalues obtained from step (c); e) generating at least one validoffspring chromosome by utilising crossover operation on said patents;f) mutating said at least one valid offspring chromosome randomly by amutation operation; g) decoding said at least one valid offspringchromosome to an offspring phenotype utilising said Genotype-Phenotypemapping module; h) evaluating fitness values of said offspring phenotypeutilising said fitness evaluation algorithm; i) identifying lowest rankchromosome in said population of valid chromosomes according to saidfitness values of said population of valid chromosomes; j) replacingsaid lowest rank chromosome by said at least one valid offspringchromosome if said fitness values of said at least one valid offspringchromosome is higher than said fitness values of said lowest rankchromosome; k) repeating step (d) to step (j) until a pre-definedgeneration gap is attained; and l) repeating step (d) to step (k) untilone of said stopping criteria is attained.
 6. The method according toclaim 5, wherein said steps of generating said population of validchromosomes further comprises the step of: a) generating a plurality ofcavity groups randomly, wherein quantity of said plurality of cavitygroups is greater than two and less than or equal to quantity of saidmoulding parts; b) filling said group session of said population ofvalid chromosomes by assigning at least one of said moulding parts toeach said cavity group; c) filling said group layout shape rule sessionof said population of valid chromosomes with a combination of valididentification numbers of said group placement rules, said internalcavity layout rules and said runner layout shape rules respectively;wherein said valid identification numbers are chosen randomly but saidcombination is conformed to said knowledgebase; and d) filling saidorientation session of said population of valid chromosomes by assigningan orientation parameter to each said plurality of moulding parts. 7.The method according to claim 5, wherein said step of evaluating fitnessvalues further comprises the steps of: a) calculating a first weightedsum of a plurality of costs; b) calculating a second weighted sum of aplurality of performance values; and c) computing said fitness values,wherein said fitness value is a ratio of said first weighted sum to saidsecond weighted sum.
 8. The method according to claim 7, wherein saidplurality of costs comprise cost of mould insert, cost of mould base,cost of runners, cost of external sliders, cost of injection mouldingand penalty cost of violating said design specific parameters; and saidplurality of quantitative performance values comprises flow path balanceperformance value, runner diameter balance performance value, clampingforce balance performance value, and drop time performance value.
 9. Themethod according to claim 5, wherein said crossover operation furthercomprises the steps of: a) selecting at least one gene in said grouplayout shape rules session as crossing group in each said parentrandomly; b) injecting said crossing group of said parents into eachother; c) copying corresponding gene in said orientation session andsaid group session associated with at said crossing group of said twoparents into each other to generate at least one offspring chromosome;d) eliminating moulding parts that occur more than once and cavitygroups that do not contain any moulding part in said at least oneoffspring chromosome to generate said at least one valid offspring; ande) changing sliders based on new location and orientation of saidplurality of moulding parts.
 10. The method according to claim 5,wherein said mutation operation further comprises the steps of: a)changing said orientation session of said at least one valid offspringchromosome randomly; b) changing said group session of said at least onevalid offspring chromosome randomly and eliminating empty cavity groupstherefrom; c) creating a new cavity group in said group layout shaperule session of said at least one valid offspring chromosome randomly,assigning one of said moulding parts to said new cavity group randomlyand updating said group session of said at least one valid offspringchromosome accordingly; d) randomly modifying said group placementrules, said internal cavity layout rules or said runner layout shaperules of at least one group in said group layout shape rules session ofsaid at least one valid offspring chromosome; or e) any combination ofthe above.
 11. The method according to claim 12, wherein said stoppingcriteria comprises: a) maximum number of generations specified by saiduser is reached; b) maximum running time specified by said user isreached; c) no improvement of said fitness values over a predefinednumber of generations is found; or d) any combination of the aboveconditions occurs.
 12. A system for family mould layout design,comprising: a) a knowledgebase; b) an encoding module for encoding saidfamily mould layout designs to chromosomes; c) a Genotype-Phenotypemapping module for decoding said chromosomes to phenotypes, wherein eachsaid phenotype represents a family mould layout solution; d) a userinput interface module for receiving design specific parameters; e) aGenetic Algorithm module for generating a population of validchromosomes and evolving said population towards a resulting populationsatisfying said design specific parameters and optimum mould flowfilling balance over successive generations; f) a system outputinterface module for exploration and visualisation of family mouldlayout solutions and generation of mould design assembly model and mouldlayout drawing.
 13. A system according to claim 12, wherein saidknowledgebase further comprises a) a group placement rules database; b)an internal cavity layout rules database; c) a runner layout shape rulesdatabase; d) a plurality of mould design knowledgebase, wherein saidplurality of mould design knowledgebase further comprises standard mouldbase database, database of empirical formula of runner sizes, databaseof empirical cavity layout design rules and database of empirical designrules of sliders; and e) a feasible family mould layout designalternatives database.
 14. A system according to claim 12, wherein saidfamily mould layout comprises at least two cavity groups with each saidcavity group comprising at least one cavity and said at least one cavitywithin each said cavity group being connected by at least one runner,wherein said encoding module further comprises: a) an orientationencoding submodule for encoding orientation of said at least one cavityto an orientation session of said chromosome; b) a cavity group encodingsubmodule for encoding cavity grouping design information to a groupsession of said chromosome; and c) a geometric encoding submodule forencoding geometric and topological layout information of said at leastone cavity and said at least one runner to a variable-length grouplayout shape rule session of said chromosome.
 15. A system according toclaim 12, wherein said user interface module further comprises a storagemean for storing said design specific parameters, wherein said designspecific parameters comprise: a) information of a plurality of mouldparts; b) design requirements and constrains; c) moulding requirements;and d) predefined parameters and stopping criteria for said GeneticAlgorithm module.
 16. A system according to claim 16, wherein saidGenetic Algorithm module further comprises: a) a retrieving submodulefor retrieving (1) said design specific parameters from said storagemean, (2) encoded chromosomes from said encoding module and (3) saidphenotypes from said Genotype-Phenotype mapping module; b) aninitialisation submodule for generating a population of validchromosomes; c) a fitness evaluation submodule for computingquantitative fitness values of said phenotypes; d) a mould costestimation submodule for calculating a plurality of cost factors of saidphenotypes, wherein said plurality of cost factors comprises cost ofmould insert, cost of mould base, cost of runners, cost of externalsliders and cost of injection moulding; e) a parent selection submodulefor selecting two parents from said population of valid chromosomesusing tournament selection strategy; f) a crossover operation submodulefor producing at least one offspring chromosome from said two parents;g) a mutation operation submodule for mutating said at least oneoffspring chromosome randomly; h) a replacement submodule for selectingand replacing lowest rank chromosome in said population of validchromosomes by said at last one offspring chromosome if said at leastone offspring chromosome has a higher fitness value than said lowestrank chromosome; and i) a termination submodule for terminating saidGenetic Algorithm module when one of said stopping criteria is attained.17. A system according to claim 12, wherein said system output interfacemodule further comprises: a) a data retrieving submodule for retrievinginformation from said Genetic Algorithm module; b) a rapid visualisationsubmodule for visualising family mould layout designs and correspondingquantitative fitness values, wherein said family mould layout designsare decoded from said population of valid chromosomes utilising saidGenotype-Phenotype mapping module; c) a graph plotting submodule forillustrating said quantitative fitness values against said successivegenerations; and d) a computer-aid-design submodule for generating saidmould design assembly model and said mould layout drawing.
 18. A methodfor combinatorial layout design using a computer, comprising: a)providing a knowledgebase for said combinatorial layout designs; b)providing a means for encoding said combinatorial layout designs tochromosomes; c) providing a Genotype-Phenotype mapping module fordecoding said chromosomes to phenotypes, wherein each said phenotyperepresents a combinatorial layout solution; d) receiving design specificparameters via a user input interface module; e) invoking a GeneticAlgorithm module to generate a population of valid chromosomes andevolve said population towards a resulting population satisfying saiddesign specific parameters over successive generations; wherein in eachsaid generation, said population of valid chromosomes are evolved by acrossover operator and a mutation operator and decoded to acorresponding population of valid layout solutions by saidGenotype-Phenotype mapping module;
 19. The method according to claim 19wherein said combinatorial layout design comprises at least two spaceelement groups; each said space element group comprises at least onespace element, wherein said means of encoding further comprises thesteps of: a) encoding orientation information of said space element byan orientation session of said chromosome; b) encoding space elementgrouping information by a group session of said chromosome; and c)encoding geometric and topological layout information of said spaceelement by a variable-length group layout shape rule session of saidchromosome.
 20. The method according to claim 20, wherein saidGenotype-Phenotype mapping module further comprises the steps of: a)reading data of said chromosome; b) decoding each said chromosome basedon said knowledgebase; c) for each said space element group, computingcoordinates for each said space element in said space element group; andd) selecting suitable layout base from said knowledgebase foraccommodating said space element groups computed from step (c).
 21. Themethod according to claim 20, wherein said crossover operator furthercomprises the steps of: a) selecting two chromosomes from saidpopulation of valid chromosomes as parents; b) selecting at least onegene in said group layout shape rule session as crossing group in eachsaid parents randomly; c) injecting said crossing group of said parentsinto each other; d) copying corresponding gene in said orientationsession and said group session associated with at least one of saidcrossing group of said two parents into each other to generate at leastone offspring chromosome; and e) eliminating space elements that occurmore than once and space element groups that do not contain any spaceelement in said at least one offspring chromosome to generate at leastone valid offspring chromosome.
 22. The method according to claim 20,wherein said mutation operator further comprises the steps of: a)changing said orientation session of said chromosome randomly; b)changing said group session of said chromosome randomly and eliminatingempty space element groups therefrom; c) creating a new space elementgroup in said group layout shape rule session of said chromosomerandomly, assigning one of said space elements to said new space elementgroup randomly and updating said group session of said chromosomeaccordingly; d) randomly modify the information in said group layoutshape rules session of said chromosome; or e) any combination of theabove.